简单ASP统计制作实例
我做了一个网站。当然,和其他人一样,一个柜台摆在上面。每天,柜台都不停地翻过来,我很高兴。但是我想,世界上谁读我的网站是新朋友还是老朋友我不知道他们来了多少次,我想给他们编号,所以我申请免费统计,但是对于N都不满意,唉,看来,只有自己有充足的食物和衣物,说,也希望高手开玩笑,不要参观展览。我使用access库作为一个例子,事实上,使用SQLServer库也只是改变链接库语句将可用,
图书馆结构如下
库文件名:CONT.ASP原本cont.mdb,但后建成,延伸了ASP防止库被下载。
表名称:选项卡
字段名称数据类型描述
ID自动编号访客号码
IP文本用于记录访问者的IP。
DAT1日期时间是用来记录访客的最后访问时间
DAT日期时间用于记录访问者第一次访问的时间。
cs号码,整数用来记录访问者的数量。
程序简单,只有两个文件,dispcont.asp用于显示统计结果,并contpage.asp用于统计信息。
第一次看CONTPAGE.ASP是乍得统计,代码如下:
%设置conn = server.createobject(数据连接。)
connstr =DBQ =+ server.mappath(cont.asp )+;defaultdir =;司机= {微软Access Driver(* .mdb)};
康涅狄格州开connstr*****上面的语句是用来链接库,cont.asp库文件名。
可人= request.cookies(仁)读饼干,饼干的名字是:卡莲,哈哈。Ah Yu的文学是臭的,只懂拼音的使用。
如果可人= 然后来判断是否cookees是空的,如果它是空的,那么它一定是一个新朋友,否则是一个老朋友。
从选项卡中选择*,其中id = 1
集= server.createobject(ADODB。记录集)
的。打开SQL,Conn,1, 3
rs.addnew如果这是一个新的访客,添加库中的记录。
RS()= 1记录,访问次数为1
RS(IP)= request.servervariables(remote_addr )写下的IP,
RS()=现在记录当前日期和时间,
RS(DAT1 )=日期记录当前日期和后来的第一次。
response.cookies(仁)= RS(ID)的写了一个饼干,和内容为ID相同。
response.cookies(仁)。到期日期+ 365 =设置Cookie的有效期从现在的365天,
其他的就是处理新朋友的方法。你为老朋友做什么看下面:
SQL =SELECT * FROM标签id是可人到图书馆找了老朋友们的记录
集= server.createobject(ADODB。记录集)
的。打开SQL,Conn,1, 3
RS(cs)= RS(cs)+1,找到它,将访问次数增加1。
RS(IP)= request.servervariables(remote_addr )看他的IP是多少,并把它写下来。
现在,注意当前时间,即最后一次访问时间,
response.cookies(仁)= RS(ID)写饼干了,我不知道这句话是多余的,没有测试。
response.cookies(仁)。到期日期+ 365 =设置Cookie过期时间,所以我不认识他,一年。
最后如果
rs.update '这一切注记,更新图书馆。
Rs. Close关闭记录集对象。
设置conn =没有释放连接,我仍然认为连接是要以正确的方式,我认为这是最不可取的4%届。
记录完成了,有二十行代码,一个非常简单的小程序。
这个程序是写的。你怎么把它放在那页上发现在头版位置和添加这行代码是很容易的:img src=contpage.aspwidth=0height= 0 。
下一步是录制节目,这可以做的比好人好,但要丑。
文件名:dispcont.asp,看代码:
%
设置conn = server.createobject(数据连接)
connstr =DBQ =+ server.mappath(cont.asp )+;defaultdir =;司机= {微软Access Driver(* .mdb)};
康涅狄格州开connstr*****上面的语句是用来链接库,cont.asp库文件名。
第三页=请求(页)
如果第三页= 然后第三页=会议(contpag )的页码数,当前页面
如果第三页= 然后第三页=1
PA =请求()
如果PA = 然后PA =会议(contpa )每页显示数
如果默认情况下为那么PA = 15,每个页面显示15个条,可以任意更改。
会议(contpag )=第三页
会议(contpa )= PA
页= PA的页面显示***************以上一段程序的分页功能的实现数
从选项卡的顺序
昏暗的RS
集= server.createobject(ADODB。记录集)
的。打开SQL,Conn,1,1
CSI = 0
CS1 = 0
CS100 = 0
csdat1 = 0
do while not rs.eof
CSI
如果RS(CS)= 1 + 1 = CS1 CS1
如果RS(CS),= 100架CS100 + 1
如果DateValue(RS(逸))=日期然后
csdat1 = csdat1 + 1
最后如果
移到下一项
环
ZS = rs.recordcount
分页显示下面的一段程序***************************************************** 8
%。
头
标题极好的计算机统计数据
体风格=字体大小:9pt背景颜色=# d8edf8
有% response.write ZS % 的记载,现在是% % response.write第三页页面:{a href =dispcont。asppag =% =第三页%PA=1515 } href =dispcont。asppag =,% =第三页%PA = 20 20 }一个href =dispcont。asppag =
{a href =dispcont.asp 刷新}
左对齐左
表格边框= 0 cellpadding = 0 风格=字体大小:9pt
TRTD页码 / TD %值= 1
我= 1 ZS步页
如果第三页= CSTR(第2页)然后
%。TD{% % response.write page2.php } / TD
% % %
TDhref =dispcont。asppag =% % response.write page2.php {% response.write page2.php % } / TD
%结束,如果
第2页=值+ 1
下一个
Sn =页*(page3-1)的当前记录数=页数每页页码每页显示数*
如果锡> ZS然后SN = 0
rs. move锡,1
在一段**********************************分页
/格表格样式=字体大小:9ptwidth=100%颜色亮=000000#边界=
TR
对于i = 1到页
响应。
响应写入(id)
响应。
响应。
响应。
响应。写TD RS(DAT1) / TD
响应。
移到下一项
如果到末行则退出循环
下一个
关闭
%。
TRTD与% = ZS % / TD TD访问次数为100次% = CS100 % / TD TD访问1次:% = 1 % / TD TD。访问% = CSI % / TD TD今天总访问数:% = csdat1 % / TD / TR。
以上是一个完整的分页显示所有可用的复制下来(注:不考虑记录并非如此),还是那句话只是为了测试自己丰衣足食自己!