我尝试使用MVC架构来创建我的项目。我想更新最后一个动作的时间用户在每个页面。
我可以在footer。php中加入这样的代码:
update_query("users", "time=NOW()", "WHERE userId = {$_SESSION['id']}");
所以每次用户刷新任何页面,他的时间都会更新。很明显,把它放在视图中不是好的做法。那么,我该怎么办呢?谢谢你。
我认为你的思路是对的。我会把它放在footer.php或任何显示在每个页面上的代码-可能是一个common.php或认证后发生的事情。
我不会为此使用AJAX,因为它是对服务器/数据库的额外调用,这是不必要的。我尽量把对服务器的查询保持在最低限度。
另外,请确保对输入进行了消毒(在将$_SESSION['id']插入数据库之前,将其设置为int),这将消除查询中任何可能的安全问题。
update_query('users', 'time=NOW()', 'WHERE userId = ' . (int) $_SESSION['id']);