繁体   English   中英

计数今天和昨天注册的用户数PHP

[英]Count Number of users registered today and yesterday PHP

我想使用PHP回显今天和昨天在网站管理面板上注册的用户数。

我以这种格式保存他们的注册日期

2017-01-09 20:32:40

谷歌搜索后我发现了这个

$daterange = "24 HOUR"; 
$sql = "SELECT COUNT(*)  
FROM ad_total_today      
WHERE DATE_SUB(CURDATE(),INTERVAL $daterange) 
<= FROM_UNIXTIME(date_time)"; 

$res = mysql_query($sql); 
$today = mysql_result ($res, 0, 0);  

但是我似乎无法理解,有人可以帮助我回显今天和昨天注册的用户总数吗?

一种解决方案是使用MySQL函数CURDATE() ,用DATE()将列的格式设置为仅DATE() (因此,我们不必处理小时/秒/分钟)。 然后,选择等于今天或昨天的值。 我已经使用SUBCAT()函数从CURDATE()减去一天。

SELECT COUNT(*) as `count`
FROM ad_total_today 
WHERE DATE(date_time) = CURDATE() 
   OR DATE(date_time) = SUBDATE(CURDATE(), 1)

或者,您可以使用IN代替两个条件。

SELECT COUNT(*) as `count`
FROM ad_total_today 
WHERE DATE(date_time) IN (CURDATE(), SUBDATE(CURDATE(), 1))

您应该真正停止使用MySQL函数,因为它们过时,过时,不安全并且不再维护。 切换到PDO或MySQLi-并且在处理查询中的变量时不要忘记使用带占位符的参数化查询-这是保护数据免受SQL注入的唯一方法。

参考资料和阅读材料

尝试以下查询

SELECT COUNT(*)  
FROM ad_total_today      
WHERE DATE_SUB IN (CURDATE(), CURDATE() + INTERVAL 1 DAY)

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM