警告:mysql_num_rows()期望参数1为资源,第33行/home/elijahrx/public_html/User/register.php中给出布尔值抱歉,有问题,请稍后再试!
/* Verfiy whether the user ID exists */
$qry1="SELECT userID FROM User_T WHERE userID='$userID'";
$result1=@mysql_query($qry1);
if (mysql_num_rows($result1)!=0)
{ echo "$userID exists, please try another userID<BR>"; }
else
{
$qry2="insert into User_T (userID, name, password)
values(\"$userID\",\"$name\",\"$password\")";
$result2=@mysql_query($qry2);
if($result2)
{echo "$userID has been successfully registered !"; }
else
{echo "Sorry, something wrong, please try later!"; }
答案 0 :(得分:2)
这一行失败了:
$result1=@mysql_query($qry1);
但是您错过了任何错误消息,因为您正在使用错误抑制。将其更改为此以查看是否显示错误:
$result1=mysql_query($qry1);
您还可以使用mysql_error函数从MySql输出错误:
http://php.net/manual/en/function.mysql-error.php
使用查询/连接解决了错误后,您就可以了。
答案 1 :(得分:0)
正如许多用户已经建议的那样,SQL查询中存在错误,导致mysql_query
函数返回FALSE
而不是resource
。
检查您的代码是否与本文档中的示例相似:http://php.net/manual/en/function.mysql-num-rows.php
<?php
$link = mysql_connect("localhost", "mysql_user", "mysql_password");
mysql_select_db("database", $link);
$result = mysql_query("SELECT * FROM table1", $link);
$num_rows = mysql_num_rows($result);
echo "$num_rows Rows\n";
?>
可能未选择数据库或无法建立与MySQL服务器的连接。
尝试将数据库名称添加到查询中,例如:
$qry1="SELECT userID FROM MYDATABASENAME.User_T WHERE userID='$userID'";