php:计算某人是一个网站多长时间并将数字插入数据库?
发布时间:2020-12-13 17:24:03 所属栏目:PHP教程 来源:网络整理
导读:嗨,我不知道这有多可能,但有一个简单的代码将从用户访问我的网站的那一刻开始计数,我可以使用标头标签来存储一些 PHP代码的会话,以说明访问页面时设置一个时间并将时间存储在我的mysql表中并计算到用户离开站点/会话结束的那一刻并根据计算的时间计算结束时
嗨,我不知道这有多可能,但有一个简单的代码将从用户访问我的网站的那一刻开始计数,我可以使用标头标签来存储一些
PHP代码的会话,以说明访问页面时设置一个时间并将时间存储在我的mysql表中并计算到用户离开站点/会话结束的那一刻并根据计算的时间计算结束时间?
我想在我的数据库中创建一个名为sessions的表,所以我知道我的网站上有多少人,我知道谷歌分析,但我想实时管理这个,所以将不胜感激任何帮助或一点正确的方向谢谢 // GET IP ADDRESS $sql = "INSERT INTO ptb_sessions (session_id,user_ip,session_start,session_end) VALUES (NULL,'" . $_SERVER['REMOTE_ADDR'] . "',now() '....');"; mysql_query($sql,$connection); 解决方法
根据我的经验,跟踪用户的最佳方法是结合ajax和php.您应该在某些时间间隔(例如60秒)从javascript发送通知,您可以在php端更新用户当前登录您网站的时间长度.
示例代码: 的index.html <script type="application/x-javascript"> // js code in index.html window.setInterval( function(){ var xmlhttp; if (window.XMLHttpRequest) {// code for IE7+,Firefox,Chrome,Opera,Safari xmlhttp=new XMLHttpRequest(); } else {// code for IE6,IE5 xmlhttp=new ActiveXObject("Microsoft.XMLHTTP"); } xmlhttp.open("GET","background.php?ping=1",true); xmlhttp.send(); },60000 ); </script> background.php <?php session_start(); // ... your database initialization here,so $connection will be valid variable ... // background.php // ur initialisation $session_id = session_id(); $sessionEnd = date('Y-m-d h:i:s'); $sql = "INSERT INTO ptb_sessions (session_id,session_end) VALUES ('$session_id',now(),'$sessionEnd') ON DUPLICATE KEY UPDATE session_end = '$sessionEnd'"; mysql_query($sql,$connection); ?> 注意:您需要在后台编写中使用session_start();重复构造的sql将自动更新您的值 – 因此无需编写检查存在. (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |