5

这是我的脚本,它验证是否username已采取。

while ($row = mysql_fetch_array($result))
{
  $usname=$row['Username'];
}
if ($usname!=$uname)
{

} else {
  echo "Username taken!";
  die;
}

它运作良好。如果 ausername被占用,它不会将它添加到数据库中,如果它未被认领,它会添加。但我总是收到这个烦人的错误:

注意:未定义变量:第 29 行 C:\xampp\htdocs\insert.php 中的 usname

我定义了那个变量!

帮助...

4

4 回答 4

3

如果mysql_fetch_array()返回null,您的 while 循环将永远不会启动,因此$usname永远不会被初始化。

尝试在上面的行中声明它,如下所示:

$usname = null;
while($row = mysql_fetch_array($result))
{
   $usname=$row['Username'];
}
If ($usname!=$uname)
{

}else{
   echo "Username taken!";
   die;
}
于 2012-11-04T02:48:33.037 回答
2

您尚未声明$usname为变量。尝试$usname='';在while循环之前放置

于 2012-11-04T02:55:48.697 回答
1

尝试使用

mysql_fetch_array($result, MYSQL_ASSOC)
于 2012-11-04T02:58:21.097 回答
0

您需要定义 $usname

$usname = null;
于 2013-07-05T21:08:12.943 回答