我有这个简单的点击计数器,但我想让它显示基于每日、每周、每月和每年的总点击数。
示例: 今天 - 24 计数 昨天 - 8 项罪名 上个月 - 45 项 四月 - xx 计数 三月 - xx 计数 二月 - xx 次
只是一些简单但与上面的示例类似的事情。 如果有人可以帮助我修改代码以实现此目标,我将不胜感激。
以下是我的代码:
CREATE TABLE `counter` ( `counter` INT( 20 ) NOT NULL );
INSERT INTO counter VALUES (0);
<?php
//Adds one to the counter
mysql_query("UPDATE counter SET counter = counter + 1");
//Retrieves the current count
$count = mysql_fetch_row(mysql_query("SELECT counter FROM counter"));
//Displays the count on your site
print "$count[0]";
?>
最佳答案
让您开始:
CREATE TABLE `counter` (
`datestamp` DATE NOT NULL,
`counter` INT NOT NULL,
PRIMARY KEY(`datestamp`)
);
然后将 UPDATE
替换为:
INSERT INTO `counter` (`datestamp`, `counter`) VALUES ( DATE(NOW()), 1 )
ON DUPLICATE KEY UPDATE `counter` = `counter` + 1;
引用:
- https://dev.mysql.com/doc/refman/5.7/en/insert-on-duplicate.html
- https://dev.mysql.com/doc/refman/5.7/en/date-and-time-functions.html#function_date
- https://dev.mysql.com/doc/refman/5.7/en/date-and-time-functions.html#function_now
现在您已经有了一些要聚合的日期信息,并且您没有为每次点击存储一行,这将是相当浪费的。
关于php - 如何让我的点击计数器每天、每周和每月进行计数?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49661933/