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

标签 php mysql

我想回显今天[正在计数]和昨天使用 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() 将列格式化为仅日期(这样我们就不必处​​理小时/秒/分钟)。然后您选择等于今天或昨天的内容。我使用 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 注入(inject)的唯一方法。

引用文献和阅读 Material

关于php - PHP 统计今天和昨天注册的用户数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42176659/

相关文章:

php - 自定义 Snipcart 订单仪表板

javascript - 尝试通过 AJAX 发送号码,然后将它们添加到我的数据库中

php - 用实际值替换常量 Symfony

php - 将远程数据库备份到本地

mysql - Sequelize Upsert 是创建而不是更新

php - 推进ORM:将具有外键关系的通用模型对象完全递归合并,以进行JSON序列化

php - fatal error : Uncaught exception 'PDOException' with message 'could not find driver'

php - 如果在 iframe 中查看页面,如何在 Wordpress 中添加正文类?

php - Sql 2 表 Q?

mysql - 如何将带有 STR_TO_DATE 的字符串 'YEARWEEK' 转换为正确的日期?