Erreur PHP/MySQL
Résolu
noctua
Messages postés
41
Date d'inscription
Statut
Membre
Dernière intervention
-
crapoulou Messages postés 28195 Date d'inscription Statut Modérateur, Contributeur sécurité Dernière intervention -
crapoulou Messages postés 28195 Date d'inscription Statut Modérateur, Contributeur sécurité Dernière intervention -
Bonjour,
Je suis en train de faire une page qui affiche les amis de la personne connectée et je bloque... Chaque fois, ca m'affiche: Erreur SELECT friend FROM friends WHERE id='SELECT id FROM users WHERE email='quuent1@hotmail.com'" You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'quuent1@hotmail.com'"' at line 1
Voila mon code (apparement c'est $requete2 qui pose problème:
Merci et bonne soirée
Je suis en train de faire une page qui affiche les amis de la personne connectée et je bloque... Chaque fois, ca m'affiche: Erreur SELECT friend FROM friends WHERE id='SELECT id FROM users WHERE email='quuent1@hotmail.com'" You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'quuent1@hotmail.com'"' at line 1
Voila mon code (apparement c'est $requete2 qui pose problème:
$requete = "SELECT id FROM users WHERE email='".$_SESSION['email']."'"; $requete2= "SELECT friend FROM friends WHERE id='".$requete.'"'; $resultat = mysql_query($requete) or die ('Erreur '.$requete.' '.mysql_error()); $resultat2 = mysql_query($requete2) or die ('Erreur '.$requete2.' '.mysql_error()); $data = mysql_fetch_array($resultat); mysql_close ();
Merci et bonne soirée
A voir également:
- Erreur PHP/MySQL
- Mysql community server - Télécharger - Bases de données
- Erreur 0x80070643 - Accueil - Windows
- Expert php pinterest - Télécharger - Langages
- J'aime par erreur facebook notification - Forum Facebook
- Code erreur f3500-31 ✓ - Forum Bbox Bouygues
14 réponses
Ah mais l'ordre d'exécution des requêtes n'est pas bon !
$requete contient le texte de ta requête et non pas l'id que tu recherches dans la base.
Il faut :
Tu veux un Nyon ?
$requete contient le texte de ta requête et non pas l'id que tu recherches dans la base.
Il faut :
$requete = "SELECT id FROM users WHERE email='".$_SESSION['email']."'"; $resultat = mysql_query($requete) or die ('Erreur '.$requete.' '.mysql_error()); $requete2= "SELECT friend FROM friends WHERE id='".$resultat."'"; $resultat2 = mysql_query($requete2) or die ('Erreur '.$requete2.' '.mysql_error()); $data = mysql_fetch_array($resultat2); mysql_close ();
Tu veux un Nyon ?
Bonsoir,
Tu as inversé les guillemets et les apostrophes :
$requete2= "SELECT friend FROM friends WHERE id='".$requete.'"';
Il faudrait plutôt :
$requete2= "SELECT friend FROM friends WHERE id='".$requete."'";
Au lieu de apostrophe/guillemet/apostrophe à la fin de la ligne, il faut guillemet/apostrophe/guillemet.
Tu as inversé les guillemets et les apostrophes :
$requete2= "SELECT friend FROM friends WHERE id='".$requete.'"';
Il faudrait plutôt :
$requete2= "SELECT friend FROM friends WHERE id='".$requete."'";
Au lieu de apostrophe/guillemet/apostrophe à la fin de la ligne, il faut guillemet/apostrophe/guillemet.
Toujours la même erreur: Erreur SELECT friend FROM friends WHERE id='SELECT id FROM users WHERE email='XXXXX@hotmail.com'' You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'XXXXX@hotmail.com''' at line 1
(Adresses mail supprimées)
(Adresses mail supprimées)
ah merci beaucoup! Tu sais me dire juste la signification de ca?
C'est à l'endroit de friend, je ne sais pas se que je dois mettre :/
echo 'Le numéro est : '.$data['friend'];
C'est à l'endroit de friend, je ne sais pas se que je dois mettre :/
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question$data = mysql_fetch_array($resultat);
La variable data est ici un tableau.
friend est l'indice du tableau.
et le résultat affiché est la valeur à cet indice.
Je te conseille de regarder ça :
https://www.php.net/manual/fr/function.mysql-fetch-array.php
Merci :) Nouveau problème, rien ne s'affiche :/
echo 'Le numéro est : '.$data['friend'];
M'affiche simplement "Le numéro est:" mais il n'y en a aucun après :/
echo 'Le numéro est : '.$data['friend'];
M'affiche simplement "Le numéro est:" mais il n'y en a aucun après :/
Tu veux afficher quoi au juste l'id ?
Si oui, il faut juste écrire :
Si oui, il faut juste écrire :
echo 'Le numéro est : ' . $resultat;
Un dernier coup de main possible? Ma boucle ne fonctionne pas :/
while ($ligne = $resultat2) { echo '<b>'.$ligne['friend']; }
Je te conseille d'apprendre la signification de ton code :
Tu confonds les variables, les tableaux, les indices de tableau, ...
https://www.php.net/manual/fr/function.mysql-fetch-assoc.php
Exemple avec la fonction "mysql_fetch_assoc"
Dans ton cas, "resultat2" est censé être un indice du tableau (un champ de ta base de données, ce qui n'est pas le cas).
Tu confonds les variables, les tableaux, les indices de tableau, ...
https://www.php.net/manual/fr/function.mysql-fetch-assoc.php
Exemple avec la fonction "mysql_fetch_assoc"
while ($row = mysql_fetch_assoc($result)) { echo $row["userid"]; echo $row["fullname"]; echo $row["userstatus"]; }
Dans ton cas, "resultat2" est censé être un indice du tableau (un champ de ta base de données, ce qui n'est pas le cas).