求:统计一个页面打开时间

大猫钓鱼 2005-09-27 09:37:14
各位兄弟,现在遇到个棘手问题想请教大家:
譬如,我有一文章发布系统,我想统计一个用户在打开的文章页面的时间,并写入数据库,请问怎么做比较好?

当然,如果能根据用户是否拉动滚动条来判断用户是否在读文章就更好了。^_^,会不会不能实现?

加一句,小弟我天资不高,不要只写session,application等几个字回答好吗?越具体越好,谢谢了!
...全文
211 12 打赏 收藏 转发到动态 举报
写回复
用AI写文章
12 条回复
切换为时间正序
请发表友善的回复…
发表回复
hello200479 2005-11-14
  • 打赏
  • 举报
回复
用JYC统计就可以实现你需要的.
http://www.adjyc.com/about.htm?csdn
大猫钓鱼 2005-09-28
  • 打赏
  • 举报
回复
好吧,我想问问你打算怎么实时更新记录在页面上呆的时间。
skywatcher 2005-09-28
  • 打赏
  • 举报
回复
不是太明白,什么叫"没有完成拖动滚动条"?是不是说拖动没有完成?实际上但开始拖动的时候,这个函数就已经开始运行了

"可是我想拖动滚动条只能作为一个参考吧,并不能全部否定读者在访问页面吧?"
为什么"拖动滚动条"会"全部否定读者在访问页面"?我不是太明白
  • 打赏
  • 举报
回复
http://www.adjyc.com/about.htm?csdn

记录页面停留时间
大猫钓鱼 2005-09-27
  • 打赏
  • 举报
回复
to ybfqlyq(殘傷足跡),这个时间很短,不加入统计也可以,不过谢谢你了!
大猫钓鱼 2005-09-27
  • 打赏
  • 举报
回复
好的,我看看先!^_^
ybfqlyq 2005-09-27
  • 打赏
  • 举报
回复
Executed Time:<%= FormatNumber((timer()-startime)*1000,0)&"ms" %>
skywatcher 2005-09-27
  • 打赏
  • 举报
回复
下面是SPI.asp的代码
<%
Response.Buffer = True
Response.ExpiresAbsolute = Now() - 1
Response.Expires = 0
Response.CacheControl = "no-cache"
'这几句绝对不能少,确定不会调用缓存中的文件
%>
'在这里读取Request.QueryString的信息,并根据当前时间,加入到数据库中
'并可以考虑返回一些JS代码,比如欢迎信息什么的
skywatcher 2005-09-27
  • 打赏
  • 举报
回复
注意上面的<script type="text/javascript" id="SPI"></script>并没有指定路径,在
document.getElementById('SPI').src='SPI.asp?id='+pageId+'&type=load';
中指定路径时,浏览器会访问相应的src路径,并将结果作为JS代码来处理
上面实现了页面载入时,运行SPI.asp?id=3&type=load的JS代码
在页面第一次被滚动后,运行SPI.asp?id=3&type=Scroll的JS代码
下面就要写这个SPI.asp
skywatcher 2005-09-27
  • 打赏
  • 举报
回复
闲得无聊……我来看看

<script type="text/javascript" id="SPI"></script>
<script type="text/javascript">
var PageScrolled=false;
var pageId=3;//这个是页面编号,用来表示用户访问了哪个页面
function PageLoad()
{
document.getElementById('SPI').src='SPI.asp?id='+pageId+'&type=load';
return true;
}
function PageScroll()
{
if(PageScrolled==false)
{
document.getElementById('SPI').src='SPI.asp?id='+pageId+'&type=Scroll';
PageScrolled=true;
}
return true;
}
document.body.onload=PageLoad;
document.body.onscroll=PageScroll;
</script>
大猫钓鱼 2005-09-27
  • 打赏
  • 举报
回复
你的代码是在:load是完成一次数据库操作,再在scroll是完成一次数据库操作,可是我想拖动滚动条只能作为一个参考吧,并不能全部否定读者在访问页面吧?

于是我尝试了用定时刷新的办法访问页面,可是这样对服务器负荷很大,不知道有没有其它办法?
大猫钓鱼 2005-09-27
  • 打赏
  • 举报
回复
to skywatcher 仔细研究了你的代码,有以下几点疑问:你是通过拖动滚动条来触发写入数据库操作,这样的统计是不够准确的,我需要的是实时统计,尽量做到精确,可是当我没有完成拖动滚动条时,SPI.asp?id='+pageId+'&type=load里怎么写呢?

28,406

社区成员

发帖
与我相关
我的任务
社区描述
ASP即Active Server Pages,是Microsoft公司开发的服务器端脚本环境。
社区管理员
  • ASP
  • 无·法
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧