Pet*_*ter 2 php mysql timestamp sql-delete
我有一个不活跃的系统.它应该在15分钟后从非活动表中删除用户.我还有一个代码,如果在该表中找不到该用户,则将该用户记录下来.非活动脚本在每次刷新页面时更新用户.
这是我尝试的非活动代码,到目前为止它不起作用:
$result = mysqli_query($con,"SELECT * FROM inactive");
while($row = mysqli_fetch_array($result))
if ($row['inactive'] > timestampadd(MINUTE, -15, now()))
{
}else {
$db_query = "DELETE FROM inactive WHERE username='$username'";
$result = mysql_query($db_query);
}
Run Code Online (Sandbox Code Playgroud)
CREATE EVENT IF NOT EXISTS `remove_inactives`
ON SCHEDULE EVERY 15 MINUTE
ON COMPLETION PRESERVE
ENABLE
DO
DELETE FROM `inactive`
WHERE `timestamp` < DATE_SUB(NOW(), INTERVAL 15 MINUTE)
;
Run Code Online (Sandbox Code Playgroud)
^使用一组并忘记重复发生的MySQL事件. 让服务器为你工作:)
对于PHP:
mysqli_query($connection, // or mysql_query(
<<<SQL
CREATE EVENT IF NOT EXISTS `remove_inactives`
ON SCHEDULE EVERY 15 MINUTE
ON COMPLETION PRESERVE
ENABLE
DO
DELETE FROM `inactive`
WHERE `timestamp` < DATE_SUB(NOW(), INTERVAL 15 MINUTE)
;
SQL;
); // ends *_query() call
Run Code Online (Sandbox Code Playgroud)
你只需要运行这个就可以在服务器上安装!
| 归档时间: |
|
| 查看次数: |
2256 次 |
| 最近记录: |