【发布时间】:2020-12-27 22:51:01
【问题描述】:
基本想法是,我每天都在尝试为我的页面浏览量创建一个新行,以便我可以呼应我的日常浏览量。
在我的数据库中,我有三列:pageid、pagehits 和 pagedate(pagedate 表会自动添加日期)
我的 PHP 代码如下所示:
<?php
require 'config/db.php';
$today = date("d-m-Y");
$query = "SELECT * FROM pagehits";
$result = mysqli_query($conn, $query);
if ($result->num_rows==0) {
$insertquery = "INSERT INTO pagehits (pagehits) VALUE (0)";
mysqli_query($conn,$insertquery);
} else {
$updateQuery = "UPDATE pagehits SET pagehits = `pagehits` + 1 ORDER BY pageid DESC LIMIT 1";
mysqli_query($conn,$updateQuery);
}
现在的问题是我想知道如何每天插入一个新行。我还发现PHP Count site view creating a row every day 有一个代码,其中该人有一个系统可以每天创建一行专门用于计算视图,但是无论我尝试修改我的代码以使其工作,它都不起作用。
这里是源代码:
$today = date("d-m-Y");
$siteViewsPrintSQL = $DB_CON -> query("SELECT * FROM statistics");
$siteViewsPrint = $siteViewsPrintSQL -> fetch();
if ($siteViewsPrint['date'] == $today) {
$updateSiteViewsCount = "UPDATE andreaem.statistics SET site_views = site_views+1 WHERE date = $today";
$DB_CON ->query($updateSiteViewsCount);
} elseif ($siteViewsPrint['date'] != $today) {
$createSiteViewsCount = "INSERT INTO `andreaem`.`statistics` (`ID`, `date`, `site_views`, `new_users`) VALUES (NULL, '$today', '0', '0');";
$DB_CON -> query($createSiteViewsCount);
$updateSiteViewsCount = "UPDATE andreaem.statistics SET site_views = site_views+1 WHERE date = $today";
$DB_CON -> query($updateSiteViewsCount);
} else {
print 'Error while updating siteviews.';
}
【问题讨论】:
-
你在基本概念上迷失了我
-
你得到什么错误?
-
只要在请求带有时间戳的页面时添加一行。然后,您可以查询任何时间段的请求总和。
-
预定
INSERT?创建TRIGGER?
标签: php mysql sql count sql-update