0

嗨,我正在尝试使用我之前使用过的一段代码来快速测试一个想法,但是我不断收到以下错误。

警告: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 ) {
4

6 回答 6

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

于 2013-04-28T20:51:55.813 回答
0

您的查询中有一个 sintax 错误,您在$ip_address更改为后立即缺少报价

$result = mysql_query("SELECT * FROM  masterip_details WHERE timedate(datetime) = CURDATE() and ip_address='$ip_address'");
于 2013-04-28T20:52:10.150 回答
0

尝试这个。你少了一个单引号...

 $result = mysql_query("SELECT * FROM masterip_details WHERE timedate(datetime) = CURDATE() and ip_address='$ip_address' ");
于 2013-04-28T20:52:40.100 回答
0

您不断收到该错误,因为您的查询错误:

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

之后缺少报价$ip_address

于 2013-04-28T20:52:44.003 回答
0

您在这里缺少单引号and ip_address='$ip_address'")

看看这个: 为什么我不应该在 PHP 中使用 mysql_* 函数?

于 2013-04-28T20:53:37.613 回答
0
("SELECT * FROM masterip_details WHERE timedate(datetime) = CURDATE() AND ip_address='$ip_address'")

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

也许缺少的 ' 将修复您的查询。

于 2013-04-28T20:54:22.057 回答