Voici mes deux lignes incriminées d'une fonction réutilisée:comportement Odd mysql_fetch_array
//snip
$req = mysql_query($sql,$db) or die(db_query_error($sql,mysql_error()));
//Breakpoint A
$data = mysql_fetch_array($req);
//Breakpoint B
//snip
A Breakpoint A:
- $ req est une ressource valide
- $ db est une ressource valide
- $ sql est valide et lorsqu'il est lancé contre la base de données retourne la valeur attendue, une simple chaîne
- Aucune erreur ne Thr propre
A Breakpoint B:
- $ data doit être un tableau avec un indice 0 étant une chaîne avec une associative nommée "get" qui a la même chaîne
Le problème est que sur cette page, toutes les requêtes fonctionnent sauf une. Pour la requête qui ne fonctionne pas, lorsque le SQL est exécuté manuellement, cela fonctionne et renvoie la valeur appropriée. J'ai des requêtes en cours d'exécution avant et après cet appel qui fonctionnent correctement.
- Si je ne compte (données $), je reçois 1.
- Si j'echo "-" $ data.. "-", je reçois "-".
- Si je fais l'écho des données $ [0], vide
- Si je fais l'écho des données $ [1], en blanc (ce ne devrait pas créer une erreur?)
Edit # 1 - print_r, dans notre fonction de débogage personnalisée, était utilisé. - var_dump de $ data montre que c'est "bool (false)". Quelque chose ne va pas avec les variables $ db ou $ sql.
Éditer # 2 Ce problème n'a rien à voir avec MySQL. Cela avait quelque chose à voir avec notre processus de publication et où les données étaient localisées pendant ce processus.
'var_dump ($ data)' –
Pourquoi ne pas vous mettre la requête dans question..in votre question? –
@Shredder: la requête n'est pas le problème car elle se résout bien lors de l'exécution sur la base de données. C'est le fait que $ data est vide alors qu'il ne devrait pas l'être. – TekiusFanatikus