Page 1 sur 1

récupération paramètre GET et requete sql

Posté : 25 févr. 2008, 22:09
par Invité
Bonjour,

J'ai un problème pour récupérer le bon format de la valeur passé dans la requête.

Code : Tout sélectionner

echo '<a href=showDetails.php?vehicule_id="'.$vehicules[$i]['vehicule_id'].'">Voir détails...</a>';

Code : Tout sélectionner

$id = $_GET['vehicule_id']; $query = 'SELECT * FROM vehicules WHERE vehicule_id="'.$id.'"';
Cela donne cette requête :
SELECT * FROM vehicules WHERE vehicule_id="\"2\""
vehicule_id en base est un int.

Posté : 25 févr. 2008, 22:13
par Genova
Bonsoir,
pour commencer les guillemets se mettent autour des valeurs des attributs HTML, tu as une erreur de syntaxe, pour le HTML la bonne syntaxe est donc :

Code : Tout sélectionner

echo '<a href="showDetails.php?vehicule_id='.$vehicules[$i]['vehicule_id'].'">Voir détails...</a>';
Ca te supprimera les guillemets bizarres autour de ton ID récupérée. Ensuite il faut savoir que si tu ne protèges pas $_GET['vehicule_id'] tu t'exposes à des failles d'injection SQL, en effet il suffit d'écrire du SQL dans ton URL pour modifier a notre guise ta requête. Je te conseil l'emploie de intval() sur ta variable s'il s'agit d'un entier, ou de mysql_real_escape_string() s'il s'agit d'une chaîne de caractère, pour la protéger.

Posté : 26 févr. 2008, 19:33
par Invité
Bonsoir,
Sa marche
je te remercie de tes conseils concernant l'injection de code SQL

Posté : 26 févr. 2008, 23:14
par Ryle
Modération :
Puisque ta question est résolue, j'ajoute le tag [Résolu]
pour indiquer aux personnes qui voudront consulter ce sujet qu'il contient une solution.

Tu peux réaliser cette opération toi-même
en cliquant sur le bouton Image qui s'affiche en haut à gauche de ce sujet
si tu as posté le 1er message en tant que membre (inscrit et identifié).

Alors... inscris-toi !!! ;)