当用户刷新网页时,我想防止脚本重复。
目前,我有一个 php 头文件,它调用一个 mysql 脚本,该脚本输入用户登录到我的数据库的时间。我注意到在页面刷新时,脚本会再次运行,并在刷新时更新数据库。这违背了获取登录时间的目的。最终目标是确定用户在我的网站上停留的时间长度。有没有更好的方法来解决这个问题?现在,我只是使用 NOW() mysql 函数将日期和时间插入数据库。
谢谢
您的login
脚本应该将用户引导到另一个页面,例如仪表板或您网站的主页。拥有一个完整的页面只是为了告诉用户他们已登录,这种情况类似于Stopping the Proceedings with Idiocy,因此只需直接重定向到主页即可。
通过执行重定向,重新加载只会重新加载主页,它不会重新加载“登录”部分,从而解决您的问题并使您的网站更有效率。
试试这个:
<?php
if ($_SESSION['user']) {
header('location: /');
} else {
mysql_query('insert into table(dateline) values(NOW())');
$_SESSION['user'] = 1; //assign user's info.
}
?>