PHP/mysql - Erreur sur un mysql_fetch_array
Résolu/Fermé
A voir également:
- PHP/mysql - Erreur sur un mysql_fetch_array
- Erreur 0x80070643 - Accueil - Windows
- Erreur 0x80070643 Windows 10 : comment résoudre le problème de la mise à jour KB5001716 - Accueil - Windows
- Mysql community server - Télécharger - Bases de données
- Erreur 1001 outlook - Accueil - Bureautique
- Code erreur f3500-32 ✓ - Forum Bbox Bouygues
5 réponses
Bonjour
WHERE date=$date ORDER BY date"
À quoi bon le ORDER BY date puisque tu ne gardes qu'une seule date ? Mais ça n'est pas ça qui empêche ta requête de marcher.
Si tu faisais des die (mysql_error()) tu aurais eu un message un peu plus parlant.
Tu utilises date comme nom de champ et c'est là le problème. Ce n'est pas interdit, mais comme date est un mot réservé de mysql, quand tu l'utilise comme identifiant, tu dois l'entourer d'accents graves (ceux de la touche 7).
WHERE date=$date ORDER BY date"
À quoi bon le ORDER BY date puisque tu ne gardes qu'une seule date ? Mais ça n'est pas ça qui empêche ta requête de marcher.
Si tu faisais des die (mysql_error()) tu aurais eu un message un peu plus parlant.
Tu utilises date comme nom de champ et c'est là le problème. Ce n'est pas interdit, mais comme date est un mot réservé de mysql, quand tu l'utilise comme identifiant, tu dois l'entourer d'accents graves (ceux de la touche 7).
Ouais c'est vrai pour le order by lol par contre le mysql_error() ne retourne rien, mais néanmoins je vais esayer avec les '', je ne connaissais pas cette syntaxe, merci ;)
Reivax962
Messages postés
3672
Date d'inscription
jeudi 16 juin 2005
Statut
Membre
Dernière intervention
11 février 2021
1 011
24 oct. 2011 à 15:17
24 oct. 2011 à 15:17
Bonjour,
Le problème, c'est que dans date=$date , tu oublies les guillemets simples autour de $date.
date='$date' marchera mieux :)
Sinon, ce sera plus pratique, au moins pendant le développement, de remplacer ton die('fetch') par die (mysql_error()). Idéalement, tu y remets même la requête pour bien vérifier que sa syntaxe est correcte après remplacement des variables.
Assure-toi aussi que ta table existe bien.
Xavier
Le problème, c'est que dans date=$date , tu oublies les guillemets simples autour de $date.
date='$date' marchera mieux :)
Sinon, ce sera plus pratique, au moins pendant le développement, de remplacer ton die('fetch') par die (mysql_error()). Idéalement, tu y remets même la requête pour bien vérifier que sa syntaxe est correcte après remplacement des variables.
Assure-toi aussi que ta table existe bien.
Xavier
Merci bien ça marche maintenant, ça venait bien de cette partie : date='$date'
même si je ne comprend pas pourquoi, vu que jusqu'à maintenant ma façon de faire avait toujours fonctionné.
Et sinon, le mysql_error() ne renvoie toujours rien lol
même si je ne comprend pas pourquoi, vu que jusqu'à maintenant ma façon de faire avait toujours fonctionné.
Et sinon, le mysql_error() ne renvoie toujours rien lol
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
C'est vrai qu'il faut des guillemets simples autour de $date,.
Pour les accents graves dont je parlais, la doc est formelle et j'ai déjà vu cette erreur, mais j'avoue que je viens de faire l'essai et que ça a marché quand même. Faudra que je remette ma doc à jour
Je remarque en plus...
Ne marchera jamais ! Quand tu auras épuisé la liste des réponses rendues par mysql_fetch_array($queryy), mysql_fetch_array te rendra false, ce qui est tout à fait normal, et ton die sera évalué. Ton script s'arrêtera complètement au lieu de continuer après le while.
Pour les accents graves dont je parlais, la doc est formelle et j'ai déjà vu cette erreur, mais j'avoue que je viens de faire l'essai et que ça a marché quand même. Faudra que je remette ma doc à jour
Je remarque en plus...
while($arrayy = mysql_fetch_array($queryy) or die('fetch'))
Ne marchera jamais ! Quand tu auras épuisé la liste des réponses rendues par mysql_fetch_array($queryy), mysql_fetch_array te rendra false, ce qui est tout à fait normal, et ton die sera évalué. Ton script s'arrêtera complètement au lieu de continuer après le while.