Erreur variable dans requete [PHP]
Fermé
Simetra
-
8 avril 2009 à 13:29
drantd
drantd
- Messages postés
- 99
- Date d'inscription
- vendredi 24 octobre 2008
- Statut
- Membre
- Dernière intervention
- 20 février 2012
A voir également:
- Erreur variable dans requete [PHP]
- Erreur variable dans requete ✓ - Forum - PHP
- Erreur requête php ✓ - Forum - PHP
- Erreur requet php/sql ✓ - Forum - PHP
- [PHP] inclure variable dans requête SQL ✓ - Forum - PHP
- PHP:Integration variable dans requete sql ✓ - Forum - PHP
11 réponses
ThEBiShOp
8 avril 2009 à 13:41
- Messages postés
- 8318
- Date d'inscription
- jeudi 22 mars 2007
- Statut
- Contributeur
- Dernière intervention
- 8 février 2021
8 avril 2009 à 13:41
2 choses ne vont pas avec ta requête, la première, tes quotes, quelque chose dans ce style serait plus juste :
"SELECT groupe FROM matable WHERE classe='$selection'"
ensuite ton classe=truc veut dire que classe doit être strictement égal à trucp. Peut être que ta requête serait plus pertinente comme suit :
"SELECT groupe FROM matable WHERE classe like '%$selection%'"
"SELECT groupe FROM matable WHERE classe='$selection'"
ensuite ton classe=truc veut dire que classe doit être strictement égal à trucp. Peut être que ta requête serait plus pertinente comme suit :
"SELECT groupe FROM matable WHERE classe like '%$selection%'"
drantd
8 avril 2009 à 13:44
- Messages postés
- 99
- Date d'inscription
- vendredi 24 octobre 2008
- Statut
- Membre
- Dernière intervention
- 20 février 2012
8 avril 2009 à 13:44
Bonjour Simetra,
Je pense que ta ligne requete serais plus juste comme ça :
Et en mettant
Je pense que ta ligne requete serais plus juste comme ça :
$recherche = mysql_query("SELECT groupe FROM matable WHERE classe='".$selection."'");
Et en mettant
classe='*".$selection."*'"ça permettra de savoir si $selection est contenu dans le champs classe
Alors^^ oui c'est normal que ma requête soit strictement = à, c'est moi qui détermine l'envoi , en faite le GET est obtenu après avoir cliqué sur un lien donc j'ai la maitrise parfaite du contenue, quoi qu'il en soit le code ne me renvoi pas une valeur vide il me renvoi une erreur, j'ai testé de faire comme drantd a dit mais cela me renvois une erreur l'erreur me dit que l'argument mit n'est pas valide pourtant comme je le dit avec des chiffres cela marche parfaitement.
ThEBiShOp
8 avril 2009 à 14:00
- Messages postés
- 8318
- Date d'inscription
- jeudi 22 mars 2007
- Statut
- Contributeur
- Dernière intervention
- 8 février 2021
8 avril 2009 à 14:00
vérifie bien tes quotes, à mon avis ça vient de là
fais un echo de ta requête et montre la nous pour voir
fais un echo de ta requête et montre la nous pour voir
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
J'ai fait un echo de $selection pour voir si cela arrive bien, pas de problème le $selection contient exactement mon GET pour se qui est de l'echo du $retour['groupe'] il ne me retourne rien.
drantd
8 avril 2009 à 14:15
- Messages postés
- 99
- Date d'inscription
- vendredi 24 octobre 2008
- Statut
- Membre
- Dernière intervention
- 20 février 2012
8 avril 2009 à 14:15
Essai comme ça
Avec cette option la fonction renvoi un tableau associatif.
$retour = mysql_fetch_array($recherche, MYSQL_ASSOC);
Avec cette option la fonction renvoi un tableau associatif.
Cela ne renvois toujours rien, je viens de faire un 'or die mysql error' qui me renvois ceci:
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 ' matable WHERE classe="test" ' at line 1
drantd
8 avril 2009 à 14:26
- Messages postés
- 99
- Date d'inscription
- vendredi 24 octobre 2008
- Statut
- Membre
- Dernière intervention
- 20 février 2012
8 avril 2009 à 14:26
Donne nous la requete qui est executée en entière. Ce sera plus facile de t'aider
La requête entière est en haut -_- mais j'la remet si tu veut:
Voila y a que ça dans ma requête, je peut rien dire de plus... j'ai un GET qui arrive je travail dessus puis je renvois un valeur correspondante.
Vous allez m'dire à quoi ça sert? bien en faite par la suite plus bas dans mon code j'ai encore la même requête mais cette fois qui prend TOUT les champs et fait une mise en page d'informations complètes, cependant pour vous éviter d'avoir 15 tonne de codes je met cette requête identique mais moins longue, la différence entre les 2? l'autre au lieux de sélectionner juste 'groupe' sélectionne tout et renvois beaucoup + d'echos, seulement le problème n'est pas la mais sur <WHERE classe= '.$selection.'> donc voila je pense pas que vous aillez non plus besoin de mon code xhtml et css pour voir la mise en page^^.
$selection = $_GET['var']; $recherche = mysql_query('SELECT groupe FROM matable WHERE classe='.$selection.''); $retour = mysql_fetch_array($recherche); if (empty( $retour['groupe'])) {echo'Page introuvable'; } else {$retour['groupe']; }
Voila y a que ça dans ma requête, je peut rien dire de plus... j'ai un GET qui arrive je travail dessus puis je renvois un valeur correspondante.
Vous allez m'dire à quoi ça sert? bien en faite par la suite plus bas dans mon code j'ai encore la même requête mais cette fois qui prend TOUT les champs et fait une mise en page d'informations complètes, cependant pour vous éviter d'avoir 15 tonne de codes je met cette requête identique mais moins longue, la différence entre les 2? l'autre au lieux de sélectionner juste 'groupe' sélectionne tout et renvois beaucoup + d'echos, seulement le problème n'est pas la mais sur <WHERE classe= '.$selection.'> donc voila je pense pas que vous aillez non plus besoin de mon code xhtml et css pour voir la mise en page^^.
ThEBiShOp
8 avril 2009 à 14:45
- Messages postés
- 8318
- Date d'inscription
- jeudi 22 mars 2007
- Statut
- Contributeur
- Dernière intervention
- 8 février 2021
8 avril 2009 à 14:45
comme tu dis -_- en effet
Je te demande de faire un echo de ta requête, pas de nous faire un copier/coller du code...
echo $recherche = mysql_query('SELECT groupe FROM matable WHERE classe='.$selection.'');
et tu nous colles la requête que tu obtiens ainsi dans ton navigateur...
Je te demande de faire un echo de ta requête, pas de nous faire un copier/coller du code...
echo $recherche = mysql_query('SELECT groupe FROM matable WHERE classe='.$selection.'');
et tu nous colles la requête que tu obtiens ainsi dans ton navigateur...
drantd
8 avril 2009 à 14:49
- Messages postés
- 99
- Date d'inscription
- vendredi 24 octobre 2008
- Statut
- Membre
- Dernière intervention
- 20 février 2012
8 avril 2009 à 14:49
Execute la ligne suivante :
Cop/Colle la requete dans php myadmin et regarde si il y a une erreur, l'explication sera plus claire que "mysql error"
echo "SELECT groupe FROM matable WHERE classe='$selection'";
Cop/Colle la requete dans php myadmin et regarde si il y a une erreur, l'explication sera plus claire que "mysql error"