MYSQL num rows错误

时间:2013-04-28 20:49:57

标签: php mysql

您好我正在尝试使用我之前使用的一段代码来快速测试一个想法,但是我继续收到以下错误。

警告:mysql_num_rows()要求参数1为资源,在

中给出布尔值
$result = mysql_query("SELECT * FROM masterip_details WHERE timedate(datetime) = CURDATE() and ip_address='$ip_address");
$num_rows = mysql_num_rows($result);
if( $num_rows > 0 ) {

6 个答案:

答案 0 :(得分:1)

这可能是因为SQL请求失败了。尝试将or die(mysql_error())附加到mysql_query旁边,如下所示:

$result = mysql_query("SELECT * FROM masterip_details WHERE timedate(datetime) = CURDATE() and ip_address='$ip_address") or die(mysql_error());

这应输出错误,以便您可以修复它。

编辑:我也可以告诉你这个错误可能是什么。在您的请求结束时,您没有在$ip_address

之后关闭单引号

答案 1 :(得分:0)

您的查询中存在语法错误,您只需在$ip_address更改为

后立即错过报价
$result = mysql_query("SELECT * FROM  masterip_details WHERE timedate(datetime) = CURDATE() and ip_address='$ip_address'");

答案 2 :(得分:0)

试试这个。你错过了一个单引号......

 $result = mysql_query("SELECT * FROM masterip_details WHERE timedate(datetime) = CURDATE() and ip_address='$ip_address' ");

答案 3 :(得分:0)

由于您的查询错误,您不断收到该错误:

mysql_query("SELECT * FROM masterip_details WHERE timedate(datetime) = CURDATE() and ip_address='$ip_address"

$ip_address

之后缺少报价

答案 4 :(得分:0)

您在and ip_address='$ip_address'")

缺少单引号

看看这个: Why shouldn't I use mysql_* functions in PHP?

答案 5 :(得分:0)

("SELECT * FROM masterip_details WHERE timedate(datetime) = CURDATE() AND ip_address='$ip_address'")

你错过了一个'在你的SQL语句的末尾,你应该写“AND”大写,因为所有其他的SQL-Keywords都是大写的(不是必需的,但更容易阅读)。

可能缺少的'会修复您的查询。