mysql_num_rows():提供的参数不是有效的MySQL结果资源

时间:2012-06-12 20:44:30

标签: php mysql

我收到一条错误消息“mysql_num_rows():在下面的代码中,提供的参数不是......第200行中的有效MySQL结果资源”似乎没问题,因为我在另一个脚本中有类似的代码:

   //Reference Code Validation...
    $ref_check = mysql_query("SELECT id FROM References WHERE Ref_Code='$ref_code' LIMIT 1");
    $number = mysql_num_rows($ref_check);//line no 200
    if ($number > 0) {
        $new_user_check = mysql_query("SELECT New_User FROM References WHERE Ref_Code='$ref_code' LIMIT 1");
        $result = mysql_fetch_array($new_user_check);
        $data = $result['New_User'];
        if($data!==Null){
            echo 'This reference code was already redeemed. Please check or leave it blank';
            exit ();

    }
else{
        echo 'Reference code is invalid. Please check and try again';
        exit ();
    }

2 个答案:

答案 0 :(得分:0)

变量$ref_check变为false。这意味着SQL查询中存在语法错误。 如果你在那里弄错了,那就意味着你将boolean放入mysql_num_rows(),这会引发错误。

我不知道你的数据库表看起来如何,所以我不能确定是否存在语法错误。

如果您确定没有语法错误,请将其放入查询中:

... LIMIT 0, 1);...

答案 1 :(得分:0)

解决了...... 发现更改下面的表名解决了错误:

Befor: References

After: `References`

可以通过按键盘左侧键“1”之前的按钮插入这种半冒号。