php - 如何在我的用户存储在 SQL 数据库中的网站上记录每个用户的时间 session ?

标签 php mysql

我有一个使用 html/css/php 制作的基本网站。有一个登录页面需要用户名和密码才能访问网站的所有其他区域。用户存储在 MySQL 数据库中(字段:用户名、密码、商店等)。

我需要/希望能够查看用户登录的时间以及该特定用户登录的时长。我需要一种简化的方法来向无法访问 cpanel 的人显示此数据。

很抱歉提出这样一个模糊的问题,请随时辱骂我并询问更多信息,我会根据需要和询问的内容进行回复。

编辑:抱歉,我想重新表述一下我的要求,因为我认为每个单独的登录 session 都会使此日志太多。我需要更准确的是:

  • 他们一个月登录了多少次
  • 当月平均登录持续时间

例子:

  • 用户A本月登录网站200次
  • 用户 A 每次访问的 session 持续时间平均为 5 分钟

抱歉造成混淆。上面的示例将是所需的数据。

最佳答案

您可以在用户登录和注销时保存时间戳。

$logintime = date('Y-m-d H:i:s'); 
$logout_time = date('Y-m-d H:i:s'); 

将这些数据保存在日志表中。此时间戳之间的差异给出持续时间。并且每个人登录时,字段'no_of_times'(类型:整数,默认值:0)的值可以增加+1。

关于php - 如何在我的用户存储在 SQL 数据库中的网站上记录每个用户的时间 session ?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37982909/

相关文章:

php - 模拟库可以用来创建多个日志文件吗?

MySQL 查询没有得到正确的值

mysql - Sqoop 导入失败,出现 'on clause' 中的未知列

php - foreach循环问题中的CakePHP多个数据库连接

php - 对数组使用重复键更新

php - 连接两个以上的 mysql 表,然后将行操作为分组的多维数组

javascript - 来自 PHP 函数结果的多个 ajax 请求

MySQL 5.6 CAST 字符串到 Int 返回错误 1064

javascript - MySQL 使用 Ajax 返回表名而不是值

php - 垃圾邮件检测服务的最佳语言选择