Notice Undefined variable
Résolu
troubadour2
Messages postés
277
Date d'inscription
Statut
Membre
Dernière intervention
-
Utilisateur anonyme -
Utilisateur anonyme -
Bonjour,
Je souhaite mettre en place l'espace membre du site "openclassrooms" qui est par ailleurs très explicite.
J'ai une erreur que je ne comprend pas.
Je souhaiterai quelques explications sur celle-ci.
Pouvez me venir en aide s'ils vous plait.
Je vous remercie très sincérement.
L'erreur est dans cette fonction à la ligne 32
Je souhaite mettre en place l'espace membre du site "openclassrooms" qui est par ailleurs très explicite.
J'ai une erreur que je ne comprend pas.
Je souhaiterai quelques explications sur celle-ci.
Pouvez me venir en aide s'ils vous plait.
Je vous remercie très sincérement.
L'erreur est dans cette fonction à la ligne 32
Notice: Undefined variable: query2 in C..............
function sqlquery($requete, $number) { $query = mysql_query($requete) or exit('Erreur SQL : '.mysql_error().' Ligne : '. __LINE__ .'.'); //requête queries(); /* Deux cas possibles ici : Soit on sait qu'on a qu'une seule entrée qui sera retournée par SQL, donc on met $number à 1 Soit on ne sait pas combien seront retournées, on met alors $number à 2. */ if($number == 1) { $query1 = mysql_fetch_assoc($query); mysql_free_result($query); /*mysql_free_result($query) libère le contenu de $query, je le fais par principe, mais c'est pas indispensable.*/ return $query1; } else if($number == 2) { while($query1 = mysql_fetch_assoc($query)) { $query2[] = $query1; /*On met $query1 qui est un array dans $query2 qui est un array. Ca fait un array d'arrays :o*/ } mysql_free_result($query); return $query2; } else //Erreur { exit('Argument de sqlquery non renseigné ou incorrect.'); } }
A voir également:
- Notice Undefined variable
- Notice gratuite - Guide
- Notice chromecast - Guide
- Notice télécommande universelle grundig - Forum Téléviseurs
- Homday x-pert écouteur bluetooth notice ✓ - Forum Casque et écouteurs
- Uleway g381 notice - Forum Mobile
2 réponses
Bonjour
Ta variable $query2 est créée par la ligne
Mais si tu n'entres pas dans le while ? Elle ne peut pas être créée.
Et si le résultat de ta requête est vide, tu n'entres pas dans ton while. Donc pas de $query2.
Il suffit de définir $query2 comme un tableau vide AVANT d'entrer dans le while : il sera ainsi défini dans tous les cas :
Ta variable $query2 est créée par la ligne
$query2[] = $query1;à l'intérieur de ton while.
Mais si tu n'entres pas dans le while ? Elle ne peut pas être créée.
Et si le résultat de ta requête est vide, tu n'entres pas dans ton while. Donc pas de $query2.
Il suffit de définir $query2 comme un tableau vide AVANT d'entrer dans le while : il sera ainsi défini dans tous les cas :
... else if($number == 2) { $query2=array(); while($query1 = mysql_fetch_assoc($query)) { $query2[] = $query1; ...