J'obtiens un “undefined variable” PHP avis

Je suis curieux de savoir pourquoi j'obtiens une erreur sur quelque chose que j'ai fait un million de fois avant, mais je suis tout d'un coup sur un certain script d'obtenir une erreur "Undefined variable: la ligne'

Encore rangée semble définis pour moi...

$sql = 'SELECT * FROM table WHERE id="1" LIMIT 1 ';

$res = mysql_query($sql);

    if(mysql_num_rows($res) != FALSE) {

    $row = mysql_fetch_array($res);

    }

Ci-dessus est de la pseudo sql... mais j'ai vérifié que l'instruction sql et je sais que je suis en sortir un résultat. Je sais aussi que $row est de stocker les données, parce que si je vais

echo $row[0];

Je obtenir les bonnes données.

Donc, à ma connaissance, le $row variable est définie. Pourtant, encore une erreur. Suis-je perdre mon esprit, ou ce qui me manque ici? Ne devriez pas cette erreur/avis ne se produira que si $row n'existait pas?


modifier

Désolé les gars sa se passe à l'INTÉRIEUR de l'instruction if:

$sql = 'SELECT * FROM table WHERE uID="' . $ID . '" LIMIT 1 ';

$res = mysql_query($sql);

if(mysql_num_rows($res) != FALSE) {

    $row = mysql_fetch_array($res);

$firstName = $row[0];

$lastName = $row[1];

$email = $row[2];

}

edit 2

si je fais un print_r($row), je reçois le suivant:

Array
(
[0] => Robert
[firstName] => Robert
[1] => Nibbles
[lastName] => Nibbles
[2] => robert@nibbles.com
[email] => robert@nibbles.com
)
Undefined variable: row
  • pourriez-vous ajouter la partie de code qui génère l'erreur mentionné ?
  • En effet, où est l'erreur? Si c'est en dehors de la "si", l'instruction, puis il est indéfini.
  • à l'intérieur de la SI la déclaration est le seul endroit où $row est utilisé.
  • il ressemble certainement vous avez un chien errant $row ailleurs...
  • c'est ce que je pensais aussi, mais sur le fait de faire une recherche dans le fichier il y a 4 les instances et à tous les 4 sont dans cette instruction si! je suis à perdre mes billes.
  • si je supprime le dessus Si l'instruction et ce qui est à l'intérieur de l'erreur disparaît. donc il ne peut pas être tout autre $ligne ailleurs peut-il?
  • L'erreur doit dire ce ligne.
  • Il se doit - mais il ne l'est pas. Je n'ai jamais vu cette erreur avant sans un numéro de ligne.