Php 如何允许用户每天投票一次,而不是最后24小时?
我正在尝试创建一个功能,允许用户每天只投票一次。为此,我在表中创建了Php 如何允许用户每天投票一次,而不是最后24小时?,php,mysql,sql,wordpress,Php,Mysql,Sql,Wordpress,我正在尝试创建一个功能,允许用户每天只投票一次。为此,我在表中创建了ratingTimestamp字段,在其中插入投票时的当前时间戳值 以及验证用户他每天只能投票一次。我正在使用这个MySQL查询: SELECT count( * ) AS votecount FROM ratings AS e WHERE e.userId =5 AND e.ratingTimestamp >= NOW( ) - INTERVAL 1 DAY 问题是,这个查询在24小时的基础上为我提供了votecou
ratingTimestamp
字段,在其中插入投票时的当前时间戳值
以及验证用户他每天只能投票一次。我正在使用这个MySQL查询:
SELECT count( * ) AS votecount
FROM ratings AS e
WHERE e.userId =5
AND e.ratingTimestamp >= NOW( ) - INTERVAL 1
DAY
问题是,这个查询在24小时的基础上为我提供了votecount
,但我只希望它以日期为基础
例如,如果用户在2014年3月12日上午11:59:00投票,并且他在2014年3月13日下午4:00再次尝试投票,他可以投票,但使用上述查询是不可能的,因为它为这种情况提供投票计数1,因为它从下午4:00开始计算最后24小时。我认为您应该使用类似的方式:
$sql="SELECT count( * ) AS votecount FROM ratings WHERE DATE(e.ratingTimestamp) = CURDATE()";
或者你也可以试试PHP
$sql="SELECT count( * ) AS votecount FROM ratings WHERE e.ratingTimestamp >= '".strtotime("today")."' AND e.ratingTimestamp < '".strtotime("tommorow")";
$sql=“从e.ratingTimestamp>=”.strotime(“今天”)和e.ratingTimestamp<”.strotime(“tommorow”)评级中选择count(*)作为votecount;
或者看看这个链接