我现在已经有一段时间了。制作一个PHP计数器,在前端页面上获取视图,并在后端(cms等)页面上显示视图。
index.php代码:
<?php
function get_hits() {
session_start();
if(isset($_SESSION['views'])) {
$_SESSION['views'] = $_SESSION['views']+ 1;
} else {
$_SESSION['views'] = 1;
}
}
?>
display_hits.php code:
<?php
function display_hits() {
session_start();
if(isset($_SESSION['views'])) {
$_SESSION['views'] = $_SESSION['views'];
} else {
$_SESSION['views'] = 1;
}
echo "Total Page Views Since Browser Close = ". $_SESSION['views'];
}
?>
<?php display_hits(); ?>
主要的是我希望计数器停留7天然后重置。不知道如何去做...我知道我应该使用setcookie();不知。
提前致谢:)
答案 0 :(得分:1)
这是一个函数setcookie,它取一个名字,一个值和一个时间。 (3600 * 24 * 7 = 7天)
setcookie("pageview", $_SESSION['views'], time()+3600*24*7);
答案 1 :(得分:0)
这应该有效。
<?php
function get_hits() {
session_start();
if(isset($_SESSION['views'])) {
$_SESSION['views'] = $_SESSION['views']+ 1;
setcookie("counter", $_SESSION["views"], $_SESSION["days"]);
} else {
$_SESSION['views'] = 1;
$_SESSION["days"] = time()+3600*24*7;
setcookie("counter", $_SESSION["views"], time()+3600*24*7);
}
}
?>
你基本上存储了另一个会话变量,时间+ 7天,并将其存储在cookie中。无论何时更新计数器,您都可以使用新的计数器值和初始时间/日来更新该cookie
DINS