问题描述
<%SetConn=Server.CreateObject("ADODB.Connection")Connstr="DBQ="+server.mappath("cont.asp")+";DefaultDir=;DRIVER={MicrosoftAccessDriver(*.mdb)};"Conn.Openconnstr‘’*****以上语句用于连接库,cont.asp是库文件名。page3=request("pag")ifpage3=""thenpage3=session("contpag")‘’分页数,当前分页ifpage3=""thenpage3="1"pa=request("pa")ifpa=""thenpa=session("contpa")‘’每页显示数ifpa=""thenpa=15‘’默认每页显示15条,可任意改session("contpag")=page3session("contpa")=papages=pa‘’每页显示数量***************以上一段程序用于实现分页功能SQL="SELECT*FROMtaborderby-dat,-id"dimrsSetrs=Server.CreateObject("ADODB.RecordSet")rs.Opensql,conn,1,1csi=0cs1=0cs100=0csdat1=0dowhilenotrs.eofcsi=csi+rs("cs")ifrs("cs")=1thencs1=cs1+1ifrs("cs")>=100thencs100+1ifdatevalue(rs("dat"))=datethencsdat1=csdat1+1endifrs.movenextloopZS=RS.RECORDCOUNT‘’*****************************************************8以下一段程序用于分页显示%><head><title>在线统计</title></head><bodystyle="font-size:9pt"bgcolor="#D8EDF8">共有<%Response.Writezs%>条记录,现在是第<%Response.Writepage3%>页每页显示:[<ahref="dispcont.asp?pag=<%=page3%>&pa=15">15]条、[<ahref="dispcont.asp?pag=<%=page3%>&pa=20">20]条、[<ahref="dispcont.asp?pag=<%=page3%>&pa=30">30]条、[<ahref="dispcont.asp?pag=<%=page3%>&pa=40">40]条[<ahref="dispcont.asp">刷新]<divalign="left"><tableborder="0"cellpadding="0"style="font-size:9pt"><tr><td>页码</td><%page2=1fori=1tozssteppagesifpage3=cstr(page2)then%><td>[<%Response.Writepage2%>]</td><%else%><td><ahref="dispcont.asp?pag=<%Response.Writepage2%>">[<%Response.Writepage2%>]</td><%endifpage2=page2+1nextsn=pages*(page3-1)‘’当前记录号=每页显示数*页数-每页显示数ifsn>zsthensn=0rs.movesn,1‘’**********************************以上一段用于分页%></tr></table></div><tablestyle="font-size:9pt"width="100%"bordercolorlight="#000000"border="1"bordercolordark="#FFFFFF"bgcolor="#A4D1E8"cellspacing="0"cellpadding="3"><tr><td>编号</td><td>最后访问首页</td><td>最后访问IP</td><td>首页次数</td><td>首次访问日期</td></tr><%fori=1topagesResponse.Write"</tr>"Response.Write"<td>"&rs("ID")&"</td>"Response.Write"<td>"&rs("dat")&"</td>"Response.Write"<td>"&rs("IP")&"</td>"Response.Write"<td>"&rs("CS")&"</td>"Response.Write"<td>"&rs("DAT1")&"</td>"Response.Write"</tr>"rs.movenextifrs.eofthenexitfornextrs.close%><tr><td>合计<%=zs%></td><td>访问次数为100次以上的有<%=cs100%></td><td>访问次数为1的有:<%=cs1%></td><td>总访问次数<%=csi%></td><td>今天访问量:<%=csdat1%></td></tr></table><%SetConn=Server.CreateObject("ADODB.Connection")Connstr="DBQ="+server.mappath("cont.asp")+";DefaultDir=;DRIVER={MicrosoftAccessDriver(*.mdb)};"Conn.Openconnstr‘’*****以上语句用于连接库,cont.asp是库文件名。keren=request.cookies("keren")‘’读取cookies,cookies的名为:“keren”ifkeren=""then‘’判断cookees是不是空,如果是空,那么肯定是新朋友啦,否则是老朋友。sql="SELECT*FROMtabwhereid=-1"setrs=server.createobject("ADODB.Recordset")rs.Opensql,conn,1,3rs.addnew‘’如果是新访客的话,在库中新增一条记录。rs("cs")=1‘’记下访问次数为1rs("ip")=request.servervariables("remote_addr")‘’记下IP,rs("dat")=now‘’记下当前的日期时间,rs("dat1")=date‘’记下当前的日期,以后用来做第一次访问的日期,response.cookies("keren")=rs("id")‘’写入一个cookies,内容就和ID一样。response.cookies("keren").expires=date+365‘’设置cookies的有效日期从现在开始,365天,else‘’以上是新朋友的处理办法,对老朋友怎么办呢?看下面的:sql="SELECT*FROMtabwhereid="&keren‘’到库中去找出我们老朋友的记录setrs=server.createobject("ADODB.Recordset")rs.Opensql,conn,1,3rs("cs")=rs("cs")+1‘’好啦,找到啦,把访问次数加上1rs("ip")=request.servervariables("remote_addr")‘’看看他的IP是多少了,记下来。rs("dat")=now‘’记下现在的时间,也就是最后一次访问的时间,response.cookies("keren")=rs("id")‘’再把cookies写进去,我不知这句是否多余,没有试。response.cookies("keren").expires=date+365‘’设置cookies过期时间,免得一年到了我就不认得他了。endifrs.update‘’该记的都记下了,更新库吧。rs.close‘’关闭recordset对象。setconn=nothing‘’释放conn,我还是认为connection要随开随关才对,放到SESSION中我认为最不可取。4%>这样在IIS上测试,总是出现错误,怎么解决呀!!!无法显示网页试图访问的网页出现问题,无法显示。--------------------------------------------------------------------------------请尝试执行下列操作:单击刷新按钮,或稍后重试。打开localhost主页,然后查找与所需信息相关的链接。HTTP错误500.100-内部服务器错误-ASP错误Internet信息服务--------------------------------------------------------------------------------技术信息(用于支持人员)错误类型:MicrosoftVBScript编译器错误(0x800A0408)无效字符/news/contpage.asp,line4,column18Conn.Openconnstr‘’*****以上语句用于连接库,cont.asp是库文件名。-----------------^
解决方案
解决方案二:
Access数据库的DSN-less连接方法 setadocon=Server.Createobject("adodb.connection") adocon.Open"Driver={MicrosoftAccessDriver(*.mdb)};DBQ="&_ Server.MapPath("数据库所在路径")
解决方案三:
一句语句没结束不要换行‘’这个是非法字符,注释要用半角字符'其他代码也有这样的问题,代码不能直接拷贝来用Connstr="DBQ="&server.mappath("cont.asp")&";DefaultDir=;DRIVER={MicrosoftAccessDriver(*.mdb)};"Conn.Openconnstr