Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/293.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/macos/8.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php 从user-donds';行不通_Php_Mysql_Sql - Fatal编程技术网

Php 从user-donds';行不通

Php 从user-donds';行不通,php,mysql,sql,Php,Mysql,Sql,我想统计一下用户在过去一个小时内发布的所有帖子。这是我的代码: $all_user_recent_posts=mysql_query("select * from user_post where user_id=$userid and where post_time >= DATE_SUB(NOW(),INTERVAL 1 HOUR);"); $count_user_recent_posts=mysql_num_rows($all_user_recent_posts); 此代码不起作用(

我想统计一下用户在过去一个小时内发布的所有帖子。这是我的代码:

$all_user_recent_posts=mysql_query("select * from user_post where user_id=$userid and where post_time >= DATE_SUB(NOW(),INTERVAL 1 HOUR);");
$count_user_recent_posts=mysql_num_rows($all_user_recent_posts);
此代码不起作用(其值为0)。但是当我删除
并且post\u time>=DATE\u SUB(NOW(),INTERVAL 1 HOUR)
时,它确实起作用,但它会显示用户的所有帖子,而不是上一个小时的帖子。代码:

$all_user_recent_posts=mysql_query("select * from user_post where user_id=$userid;");
$count_user_recent_posts=mysql_num_rows($all_user_recent_posts);

您的查询中有一个额外的,其中 接近

用这个替换你的

$all_user_recent_posts=mysql_query("select * from user_post where user_id=$userid and post_time >= DATE_SUB(NOW(),INTERVAL 1 HOUR);");

希望这能有所帮助:-)

正如我在评论中所说的,并将其发布为社区wiki,因为在代表积分方面不应从中获得任何好处

where user\u id=$userid和where post\u time
这是一个语法错误

where user\u id=$userid和post\u time
where子句使用一个where,而不是多个where,并由
分隔

参考:

对查询进行错误检查也会告诉您这一点

并且还应该根据您的查询进行检查,如果有

或die(mysql\u error())
添加到
mysql\u query()

错误报告是您可以使用的另一个工具

此外,
post_time
列必须是有效的MySQL日期类型

如果您试图对
varchar
类型进行数学运算,那么它将不起作用,或者任何与日期相关的类型都无效

咨询:

您不知道如何使用mysql\u num\u rows()

以下两个示例的反应不同

if(mysql_num_rows($result) > 0)


因为在一个小时间隔内没有帖子?啊哼
where user\u id=$userid和where post\u time
这是一个语法错误
where user\u id=$userid和post\u time
where子句使用一个where,而不是多个where,并由
分隔。我也会告诉你的@jaldkI会怀疑mysql\u num\u rows()。如果您没有看到这一点,您可能希望打开错误报告和日志记录。此外,在尝试使用结果之前,您应该始终检查SQL查询是否导致错误。请。已在PHP7中删除。了解使用PDO的语句,并考虑PDO,仍然给我0…
if(mysql_num_rows($result) > 0)
if(mysql_num_rows($result) == 1)