Un probleme mysql+php retour de requete vide
Résolu/Fermé
burnedsyn
Messages postés
170
Date d'inscription
samedi 29 septembre 2007
Statut
Membre
Dernière intervention
21 février 2009
-
1 nov. 2007 à 12:52
burnedsyn Messages postés 170 Date d'inscription samedi 29 septembre 2007 Statut Membre Dernière intervention 21 février 2009 - 1 nov. 2007 à 21:53
burnedsyn Messages postés 170 Date d'inscription samedi 29 septembre 2007 Statut Membre Dernière intervention 21 février 2009 - 1 nov. 2007 à 21:53
A voir également:
- Mysql a retourné un résultat vide
- Supprimer page word vide - Guide
- Ecran retourne - Guide
- Lexer resultat - Télécharger - Sport
- Resultat foot - Télécharger - Vie quotidienne
- Mysql community server - Télécharger - Bases de données
9 réponses
Salut,
pourquoi as tu mis:
collate utf8_bin
essayes en mettant latin_bin1
sinon fais des echos pour voir ce que tu as réellement, si la valeur recherchée existe bien dans le champ
pourquoi as tu mis:
collate utf8_bin
essayes en mettant latin_bin1
sinon fais des echos pour voir ce que tu as réellement, si la valeur recherchée existe bien dans le champ
burnedsyn
Messages postés
170
Date d'inscription
samedi 29 septembre 2007
Statut
Membre
Dernière intervention
21 février 2009
16
1 nov. 2007 à 13:39
1 nov. 2007 à 13:39
en fais j'ai repris le code de phpmyadmin directement pour montrer l'exemple de la table... je sais pas pourquoi ce drapeau est activé.
pour les echos j'en ai fais plein avant d'écrire sur ce poste car au départ j'ai eu toujours au meme endroit du code et nulle part ailleur une fausse erreur de syntax un bug de mysql qui en fait renvois une erreur de syntaxe lorsque que l'un des champ a un mot reserver non echappé comme nom.
bref y avait des echo de tous et a tous les moment la query etait bonne je la fais dans phpmyadmin et elle marche (enfin c'est une bete query select * from table...) et elle retourne un set vide null
c'est plus complexe que cela n'en a l'air
pour les echos j'en ai fais plein avant d'écrire sur ce poste car au départ j'ai eu toujours au meme endroit du code et nulle part ailleur une fausse erreur de syntax un bug de mysql qui en fait renvois une erreur de syntaxe lorsque que l'un des champ a un mot reserver non echappé comme nom.
bref y avait des echo de tous et a tous les moment la query etait bonne je la fais dans phpmyadmin et elle marche (enfin c'est une bete query select * from table...) et elle retourne un set vide null
c'est plus complexe que cela n'en a l'air
burnedsyn
Messages postés
170
Date d'inscription
samedi 29 septembre 2007
Statut
Membre
Dernière intervention
21 février 2009
16
1 nov. 2007 à 13:54
1 nov. 2007 à 13:54
voici ce qui s'affiche en ajoutant des echo var dump et print r aux endroit ou c'est nécessaire
SELECT * FROM newsen <<< la query fautive
le premier et seul set de donnée en retour avec des valeur null
bool(false) et un dump de news un tableau Array
array(1) { [0]=> array(3) { ["id"]=> NULL ["titre"]=> NULL ["textenews"]=> NULL } } Array ( [0] => Array ( [id] => [titre] => [textenews] => ) )
SELECT * from newsfr where id=
erreur :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 '' at line
Encore une fois cela n'interviens que dans la condition que $GET['lang'] soit reçu le reste du code fonctionne a merveille
SELECT * FROM newsen <<< la query fautive
le premier et seul set de donnée en retour avec des valeur null
bool(false) et un dump de news un tableau Array
array(1) { [0]=> array(3) { ["id"]=> NULL ["titre"]=> NULL ["textenews"]=> NULL } } Array ( [0] => Array ( [id] => [titre] => [textenews] => ) )
SELECT * from newsfr where id=
erreur :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 '' at line
Encore une fois cela n'interviens que dans la condition que $GET['lang'] soit reçu le reste du code fonctionne a merveille
Salut,
as tu mis:
$query="SELECT * from newsfr where id=$_GET['lang']"
essayes:
et avec des majuscules c'est plus facile à lire, donc a debugger
as tu mis:
$query="SELECT * from newsfr where id=$_GET['lang']"
essayes:
$query="SELECT *FROM newsfr WHERE id='".$_GET['lang']."'"
et avec des majuscules c'est plus facile à lire, donc a debugger
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
burnedsyn
Messages postés
170
Date d'inscription
samedi 29 septembre 2007
Statut
Membre
Dernière intervention
21 février 2009
16
1 nov. 2007 à 18:56
1 nov. 2007 à 18:56
non et cela ne serait d'aucune aide...
la query etant $query="SELECT * FROM newsen";
je ne vois pas pourquoi ajouter une condition a cela vu que ca lante sur ce select qui tant que la table contient des données devrait retourner un resultat non nul!!!
lis mieux tu verras que la query fautive n'est pas la deuxième celle de newsfr mais bien le retour vide de la première select *from newsen
enfin je veux dire y a rien qui te choque dans ce que j'écris ?
tim
la query etant $query="SELECT * FROM newsen";
je ne vois pas pourquoi ajouter une condition a cela vu que ca lante sur ce select qui tant que la table contient des données devrait retourner un resultat non nul!!!
lis mieux tu verras que la query fautive n'est pas la deuxième celle de newsfr mais bien le retour vide de la première select *from newsen
enfin je veux dire y a rien qui te choque dans ce que j'écris ?
tim
Bonsoir,
une suggestion peut être toute bête:
Puisque tu fais un var_dump($t)
ne faudrait-il pas que tu fasses juste après un reset($t);
pour remettre le pointeur de l'array à zéro ??
une suggestion peut être toute bête:
Puisque tu fais un var_dump($t)
ne faudrait-il pas que tu fasses juste après un reset($t);
pour remettre le pointeur de l'array à zéro ??
burnedsyn
Messages postés
170
Date d'inscription
samedi 29 septembre 2007
Statut
Membre
Dernière intervention
21 février 2009
16
1 nov. 2007 à 21:38
1 nov. 2007 à 21:38
non car le var duvar dump est la uniquement pour montrer l'etat de $t en plus ne deplace pas le pointeur interne.
ne trouvant pas de solution j'ai externaliser le process (dans un autre fichier) et la ca marche pourquoi ou qu'est ce je ne sais pas
bref ce thread n'est plus necessaire
tim
ne trouvant pas de solution j'ai externaliser le process (dans un autre fichier) et la ca marche pourquoi ou qu'est ce je ne sais pas
bref ce thread n'est plus necessaire
tim
ah !
var_dump() est similaire à print_r()
alors j'ai lu ça sur le site php.net:
"Gardez en tête que print_r() place le pointeur de tableau à la fin du tableau. Utilisez reset() pour le ramener au début."
var_dump() est similaire à print_r()
alors j'ai lu ça sur le site php.net:
"Gardez en tête que print_r() place le pointeur de tableau à la fin du tableau. Utilisez reset() pour le ramener au début."
burnedsyn
Messages postés
170
Date d'inscription
samedi 29 septembre 2007
Statut
Membre
Dernière intervention
21 février 2009
16
1 nov. 2007 à 21:53
1 nov. 2007 à 21:53
pardonne mioi c'est possible toutefois je n'ai eu aucuns probleme avec var-dump ou print_r sans faire de reset du tableau
sorry si je me suis trompé en affirmant que var dump ne deplacais pas le pointeur
tim
sorry si je me suis trompé en affirmant que var dump ne deplacais pas le pointeur
tim