在PHP中使用定义的变量时未定义的变量错误?

时间:2014-11-04 12:27:13

标签: php variables

我正在建立一个我登录的网站,按一个按钮,然后从数据库加载一些信息。代码很好地期望一件事:我得到这个错误:

<b>Notice</b>:  Undefined variable: error in <b>/character-load.php</b> on line <b>42</b><br />

但是变量在这里定义:

if ($user["banned"] == 1){ 
$error = 1;
}
if (mysql_num_rows($character) == 0){ 
$error = 1;
}
if (mysql_num_rows($username) == 0){ 
$error = 1;
}
if (empty($charid)){ 
$error = 1;
}

这有什么问题吗?我不明白为什么它说变量错误未定义?我可以根据要求添加更多信息,因为我真的不知道还要添加什么。

2 个答案:

答案 0 :(得分:0)

试试这个 -

$error = 0;
if ($user["banned"] == 1){ 
  $error = 1;
}
if (mysql_num_rows($character) == 0){ 
  $error = 1;
}
if (mysql_num_rows($username) == 0){ 
  $error = 1;
}
if (empty($charid)){ 
  $error = 1;
}

并在使用时添加检查。

答案 1 :(得分:0)

仅在发生这4种情况之一时才定义变量。在没有发生这种情况的情况下,它不会存在。

最简单的修复方法是在块的顶部将其定义为0.

记住;在PHP中,仅在实际执行其中一个赋值行时才定义变量。只是在文件中但被跳过并不算数。