Problème de variable dans requête MYSQL WHERE
SteveF
-
SteveF -
SteveF -
Bonjour à tous
Voici mon souci j'ai une base MYSQL que j'aimerai interroger via PDO de la manière suivante :
Cette ligne ne fonctionne pas car je n'arrive pas à intégrer une variable déclarée plus haut dans ma page (et que je retrouve bien en écho)
Par contre cette ligne fonctionne en mode manuel
A ce moment je récupère bien ma valeur sans problème
Merci de toute l'aide que vous pourrez m'apporter
Voici mon souci j'ai une base MYSQL que j'aimerai interroger via PDO de la manière suivante :
Cette ligne ne fonctionne pas car je n'arrive pas à intégrer une variable déclarée plus haut dans ma page (et que je retrouve bien en écho)
<?php echo $_GET["ph_id"]; $id=$_GET['ph_id']; echo $id; ?><br /> $reponse = $bdd->query('SELECT path, id FROM id_ph WHERE id=\''$id'\'');
Par contre cette ligne fonctionne en mode manuel
<?php echo $_GET["ph_id"]; $id=$_GET['ph_id']; echo $id; ?><br /> $reponse = $bdd->query('SELECT path, id FROM id_ph WHERE id=\'ph_A001\'');
A ce moment je récupère bien ma valeur sans problème
Merci de toute l'aide que vous pourrez m'apporter
A voir également:
- Problème de variable dans requête MYSQL WHERE
- Where is it - Télécharger - Gestion de fichiers
- Mysql community server - Télécharger - Bases de données
- Quelle requête écrire pour demander au moteur de recherche de présenter de préférence les pages web traitant de tennis mais pas de tennis de table ✓ - Forum Java
- Variable d'environnement temp - Forum Word
- Le fichier contient un programme écrit en python. le programme construit un mot secret mais il ne l'affiche pas. modifiez ce programme afin que à chaque itération de la boucle : la variable a augmente de 2 la variable b diminue de 1 ajoutez une instruction pour faire afficher le mot secret construit. quel est ce mot secret ? ✓ - Forum Python
4 réponses
$reponse = $bdd->query('SELECT path, id FROM id_ph WHERE id=\''$id'\'');
Normalement :
$reponse = $bdd->query('SELECT path, id FROM id_ph WHERE id=\''.$id.'\'');
Normalement :
$reponse = $bdd->query('SELECT path, id FROM id_ph WHERE id=\''.$id.'\'');
salut,
Passe plutôt par les requêtes préparées, c'est plus sécurisé et ça pose moins de souci.
exemple
Passe plutôt par les requêtes préparées, c'est plus sécurisé et ça pose moins de souci.
exemple
<?php $req = $bdd->prepare('SELECT path, id FROM id_ph WHERE id= ?'); $req->execute(array($id)); ?>
Merci de ta réponse mais le problème persiste même si ta proposition permet un bien meilleur code et je t'en remercie :)
car
$req = $bdd->prepare('SELECT path, id FROM id_ph WHERE id= '$id'');
$req->execute(array($id));
Ne fonctionne pas si j'inclue la variable
car
$req = $bdd->prepare('SELECT path, id FROM id_ph WHERE id= '$id'');
$req->execute(array($id));
Ne fonctionne pas si j'inclue la variable
Ok je vais potasser ce lien merci beaucoup :)
En attendant j'ai ce code qui fonctionne finalement je le met pour aider au cas où ce n'est pas aussi bien que le code que tu m'as proposé mais bon ca fait le boulot en attendant mieux :)
$reponse = $bdd->query('SELECT path, id FROM id_ph WHERE id='.$id.'');
Merci
En attendant j'ai ce code qui fonctionne finalement je le met pour aider au cas où ce n'est pas aussi bien que le code que tu m'as proposé mais bon ca fait le boulot en attendant mieux :)
$reponse = $bdd->query('SELECT path, id FROM id_ph WHERE id='.$id.'');
Merci
$reponse = $bdd->query("SELECT path, id FROM id_ph WHERE id= '$id' ");
Avis aux gens en galère cette ligne fonctionne :