最近确实是在做ASP动态全站静态化的研究和开发。大家都知道的,直接转成静态页面的程序本身是不能调用数据库来实现当前页面访问量统计的,包括现实被访问次数、访问次数增加等功能。但是静态页面如果没有这么一个功能,却又总觉得比ASP动态页少点什么。用iframe来做吧,又不好控制iframe的表现。基于前面的考虑,于是打算还是用JS完成该功能。 有这个一个前提,就在网络上找了相关的解决办法,确实是用JS的。下面是详细内容: 首先,在需要显示访问量的静态页的相关位置写上一行: <script lanuage="javascript" src="/inc/viewnum.asp?id=100"></script> 此处: 路径使用了绝对路径,可以使用相对路径,自己改。文件名也自己改。参数ID也可以改成自己需要指定的参数。至于100这个ID号的得来,既然是从ASP转化为HTML,从数据库读取就可以了,比如<%=rs("id")%>,不同人有不同的写法,以获得ID号为准。 之后,在指定的路径下创建viewnum.asp,写入以下代码: -------------------------------分割线:以下为代码------------------------------------ <!--#include virtual="/inc/conn.asp"--> <!--此处使用绝对路径包含了Conn文件。可以使用相对路径(include file),位置、文件名自己修改。如不愿包含Conn文件,自己写入数据库连接字符串--> <% dim id,sqlStr,hits id=int(trim(request.querystring("id"))) '获得参数ID。自己改成相应的内容。 sqlStr="update tablename set viewnum = viewnum +1 where id= "&id 'tablename 为指定的数据表的名称,自己改。 'viewnum 为该ID浏览量统计字段,ACC数据库为数字类型,SQL选用合适数据类型。自己改。 'ID 为该ID的ID号,根据自己的情况改成相应的字段名称。 '功能:给该ID的浏览量加1 conn.execute(sqlStr) '执行操作 viewnum=conn.execute("select viewnum from tablename where id="&id)(0) '读取该ID内容访问次数 %> document.write(<%=viewnum%>) //输出该ID内容访问次数 -------------------------------分割线:以上为代码------------------------------------ 以上代码,黑色部分为代码,彩色部分为注释内容(蓝色为HTML注释,红色部分为VBS注释,绿色部分为JS注释)。 用这段代码控制,在生成的静态页面当中便可以正常的显示当前页面访问量情况了。
|