Passer une variable en url après avoir cliqué sur un lien

Résolu
cs_ethan94 Messages postés 27 Date d'inscription dimanche 16 mars 2008 Statut Membre Dernière intervention 15 juin 2010 - 4 oct. 2008 à 21:23
cs_ethan94 Messages postés 27 Date d'inscription dimanche 16 mars 2008 Statut Membre Dernière intervention 15 juin 2010 - 10 oct. 2008 à 14:47
Bonsoir :)

Je développe actuellement un tout petit site de réservation de jeux vidéo en ligne (fictif, c'est un projet pour le lycée) et je suis bloqué a un certain niveau. J'ai crée un formulaire de recherche (sélection par genre, plate-forme ou année) qui accède à ma base de donnée pour afficher les jeux dans un tableau (titre, genre, plate-forme, année). Pour l'instant, j'ai fait en sorte que les titres de chaque jeu du tableau soient des liens cliquables qui redirigent vers leur propre page sur un site de jeux vidéo. J'aimerais maintenant que lorsque je clique sur l'un des jeux dans mon tableau, je sois redirigé vers une autre page de mon site (appelée jeu.php) et qui affiche le titre du jeu, son année de sortie, une ou plusieurs images, etc... En fait, toutes les infos présentes dans ma base de donnée mais en mieux présenté.

Pour réaliser ça, je pense qu'il faudrait que lorsque je clique sur l'un des jeux du tableau, une variable correspondant à l'identifiant du jeu (dans ma base de donnée) soit passée en paramètre dans l'url de la page jeu.php et qu'ensuite j'utilise cette variable pour créer une requête sql et ainsi récupérer les infos souhaitées pour pouvoir les afficher sur cette même page.

Le problème, c'est que je ne sais pas vraiment comment faire. Pourriez-vous me donner un coup de main?

Merci par avance.

8 réponses

PlayerMania Messages postés 95 Date d'inscription jeudi 22 avril 2004 Statut Membre Dernière intervention 28 avril 2009
5 oct. 2008 à 00:22
Bah tu as quasi tout dit je crois lol

Tu met l'id qui correspond au jeux video ds le lien : jeu.php?id=12

Dans la page jeu.php, tu cree une requete sql selon le parametre id récu ds l url ($_GET['id'])

Et voila, tu retrouvera toutes les info de ta base sur cet id la.
3
PlayerMania Messages postés 95 Date d'inscription jeudi 22 avril 2004 Statut Membre Dernière intervention 28 avril 2009
9 oct. 2008 à 11:31
Je pense que le probleme de docteursas est qu'il n'a pas de reel formulaire, avec des balises form et des input, tu ne peu pas passer une variable directement dans le lien si c'est ce que tu essayes de faire, mais par des balise input, suis la démarche expliquer par ethan94.

Je rajouterais surtout qu'il faut que vous fassiez attention à la recupération de la variable $_GET['id'] si celle ci est utilisée dans une requete sql, risque d'injection possible, alors échappez la surtout de base :
$numjeu = addslashes($_GET['id']);
3
cs_ethan94 Messages postés 27 Date d'inscription dimanche 16 mars 2008 Statut Membre Dernière intervention 15 juin 2010
5 oct. 2008 à 14:51
Bonjour et merci pour ces précisions :) Ça fonctionne bien ^^.
0
docteursas Messages postés 33 Date d'inscription lundi 25 juillet 2005 Statut Membre Dernière intervention 13 mars 2011
9 oct. 2008 à 04:05
excusez moi, j'ai le meme probleme.
je veux recuperer la variable d'un formualire dans l'url. voici le code que j'ai mis sur le lien :  [test2.php?variable=$champarecuperer; ?> lien  ] mais ca ne marche pas
il me donne comme url test2.php?variable=$champarecuperer, j'iamerais avoir le contenu du champ : champarecuperer

docteur
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
cs_ethan94 Messages postés 27 Date d'inscription dimanche 16 mars 2008 Statut Membre Dernière intervention 15 juin 2010
9 oct. 2008 à 08:09
Voici mon code, ça pourra peut être t'aider :)

Dans mon formulaire, j'ai mis la méthode GET. Ensuite dans le action, j'ai mis "jeu.php?id='.$ligne['code_jeu'].'&resa" (le $resa est une deuxième variable passée en paramètre).

Maintenant dans la page jeu.php , au début, j'ai ceci: $numjeu = $_GET['id']; et donc dans cette variable, j'ai la valeur de id qui avait pris elle-même la valeur de code_jeu. (le $ligne[], c'est parce qu'il s'agit d'un résultat de requête sql..)
0
cs_ethan94 Messages postés 27 Date d'inscription dimanche 16 mars 2008 Statut Membre Dernière intervention 15 juin 2010
9 oct. 2008 à 20:31
Merci pour cette précision :) En BTS info, on nous apprend rien sur la sécurité en programmation : / Par hasard, tu ne connaitrais pas un ou plusieurs sites qui donneraient des règles de base de sécurité en html ou php ?
0
PlayerMania Messages postés 95 Date d'inscription jeudi 22 avril 2004 Statut Membre Dernière intervention 28 avril 2009
10 oct. 2008 à 14:15
Arf hélas non, je n'ai pas de site magique lol.
Par rapport aux injection sql, il faut que tu regarde si un element de ta requete n'est pas modifiable par l internaute.
Dans le cas de ici, par exemple en changeant l'url a la main, on peu foutre ce que l'on veux dans ta requete qui prendra le GET id, donc pr empécher tout du moins de changer le role, l action de cette requete, et la faire passer en mode delete lol, bin échape les variable avec addslashes.

quelques mots clefs à chercher dans google : injection sql, xss, pseudo frame
0
cs_ethan94 Messages postés 27 Date d'inscription dimanche 16 mars 2008 Statut Membre Dernière intervention 15 juin 2010
10 oct. 2008 à 14:47
Ok merci :)

Je vais essayer de me renseigner. Si jamais tu trouves quelque chose, je suis preneur ^^
0
Rejoignez-nous