记录用户在页面停留时间并写入数据库
2013-04-26 14:26
369 查看
花了很长时间终于把这个功能做出来了,跟大家分享下。用的是jquery。
有两个页面action.aspx和action_to_sql.aspx
action.aspx代码是:(CS文件里面没有代码)
action_to_sql.aspx.cs代码是:(action_to_sql.aspx文件里面没有代码)
有两个页面action.aspx和action_to_sql.aspx
action.aspx代码是:(CS文件里面没有代码)
<%@ Page Language="C#" AutoEventWireup="true" CodeFile="action.aspx.cs" Inherits="_Default" %> <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml"> <head runat="server"> <title>无标题页11111</title> <script src="script/jquery.js" type="text/javascript"></script>//引用jquery(好东西来的,没学会的人编程能力肯定是起步阶段,即使你学了很久编程,本人就是后悔太迟学了) <script language="javascript" type="text/javascript"> var start; var end; var state; start = new Date();//start是用户进入页面时间 $(document).ready(function() {//用户页面加载完毕,这个是jquery初始化的语句(不知道初始化这个词用的是否正确) $(window).unload(function() {//页面卸载,就是用户关闭页面、点击链接跳转到其他页面或者刷新页面都会执行 end = new Date();//用户退出时间 state = end.getTime() - start.getTime();//停留时间=退出时间-开始时间(得到的是一个整数,应该是毫秒为单位,1秒=1000) $.post("action_to_sql.aspx", { state_time: state, state_url: window.location.pathname ,state_title: $("title").html() });//把值传到action_to_sql.aspx页面写入数据库(一开始我不想这样做,希望在本页面直接处理写入数据库,后来发现我的是生成静态页面的,无法在原来页面完成数据处理,所以学习jquery,并采用这种方法解决,才发现jquery真的是个好东西。) }); }); </script> </head> <body> <form id="form1" runat="server"> <asp:HyperLink ID="HyperLink1" runat="server" NavigateUrl="action_out.aspx" >退出网站</asp:HyperLink> </form> </body> </html>
action_to_sql.aspx.cs代码是:(action_to_sql.aspx文件里面没有代码)
using System; using System.Collections; using System.Configuration; using System.Data; using System.Web; using System.Web.Security; using System.Web.UI; using System.Web.UI.HtmlControls; using System.Web.UI.WebControls; using System.Web.UI.WebControls.WebParts; public partial class action_to_sql : System.Web.UI.Page { protected void Page_Load(object sender, EventArgs e) { if (!IsPostBack) { if (Session["user"] != null)//要记录哪个用户在哪个页面停留时间必须用户先登录 { Hashtable ht = new Hashtable(); ht.Add("user_id", Session["user_id"]);//用户ID ht.Add("state_time", Request["state_time"]);//用户停留时间(时间应该是毫秒为单位吧,因为记录的时间1面=1000) ht.Add("state_url", Request["state_url"]);//用户在哪个页面停留 ht.Add("state_title", Request["state_title"]);//停留页面的title ht.Add("ipaddress", Request.UserHostAddress);//用户IP com.bn388.video.BLL.log.insert(ht);//写入数据库,这里是一个类来的,当然你也可以用自己的类 } } } }
相关文章推荐
- 记录用户在页面停留时间并写入数据库
- jquery记录用户访问页面停留时间
- 用户行为日志-js埋点(三)浏览记录和停留时间思路
- 线上mongodb 数据库用户到期时间修改的操作记录
- jquery记录页面访问停留时间
- 记录页面停留时间
- js记录用户行为浏览记录和停留时间(转)
- js记录用户在网站的浏览记录和停留时间
- JSP中统计用户在某页面的停留时间
- jsp页面功能是向数据库删除一条记录,如果删除成功,JSP页面上弹出一个提示框告诉用户添删除成功!
- PHP记录页面停留时间的方法
- 用户行为统计分析页面停留时间计算
- js记录用户在网站的浏览记录和停留时间(2)
- 记录页面停留时间
- PHP记录页面停留时间的方法
- JavaScript 记录页面停留时间-通过测试
- 统计用户访问网站页面的停留时间
- 如何统计用户在某一页面的停留时间?(不是网站停留时间)
- asp.net 记录用户打开和关闭页面的时间
- JavaScript 记录页面停留时间-通过测试