申请出错

王朝other·作者佚名  2006-12-16
窄屏简体版  字體: |||超大  

使用ASP制作网站计数器,一般采用ASP的内置对象application,用一文本文件来保存记数值,在这里我将介绍另外一种方法,采用数据库来制作,而且是多用户版的,这样,不仅可以自己使用,而且可以为其它网站服务了。下面是具体做法:

● 制作前的准备

由于要使用数据库来保存记数值与用户信息,所以必须先建立数据库(这里我们采用ACCESS格式),可以用Microsoft Access建立下面的数据库:

数据库名称为:count.mdb

表名为:counttable

有下面字段:

user:[数据类型:文本,字段大小:255]保存用户名

pageurl:[数据类型:文本,字段大小:255]保存用户主页地址

curvalue:[数据类型:数字,字段大小:长整型]保存计数器值

同时需准备十个图片:0-9,放于目录"1"中,文件名为0.gif,1.gif......(用来图形化显示的计数值)

● 用户申请表单制作

可以使用Microsoft FrontPage制作下面的计数器申请表单,文件名保存为:get.htm

用 户 名

计数器值

主页地址

表单中的action="getcl.asp"表示用getcl.asp文件来处理用户的输入,那么,getcl.asp文件怎么处理用户的输入,将用户的输入加入数据库呢?方法如下:

Set conn = Server.CreateObject("ADODB.Connection")

dbpath=server.MapPath("count.mdb")'取得数据库的实际路径

conn.open "driver={Microsoft Access Driver (*.mdb)};dbq="&DbPath

set rs=server.CreateObject("adodb.recordset")

'取得用户信息

user=Request.Form("user")

pageurl=Request.Form("pageurl")

curvalue=Request.Form("curvalue")

'先检查用户名是否存在

sql="select * from counttable where user='"&user&"'"

rs.Open sql,conn,1,3

if not rs.EOF then

Response.Write"申请出错"

Response.Write"对不起,用户名已经存在!"

'结束向下处理,要求用户重填

Response.End

end if

'将用户信息加入数据库

rs.AddNew

rs("user")=user

rs("pageurl")=pageurl

rs("curvalue")=curvalue

rs.Update

rs.Close

set rs=nothing

conn.Close

set conn=nothing

%

● 计数程序制作

完成了用户申请处理的制作,下面就要制作计数器的核心程序(count.asp)了。具体方法如下:

Set conn = Server.CreateObject("ADODB.Connection")

dbpath=server.MapPath("count.mdb")

conn.open "driver={Microsoft Access Driver (*.mdb)};dbq="&DbPath

user=Request.QueryString("user")

'计数值加1

sql="update counttable set curvalue=curvalue+1 where user='"&user&"'"

conn.Execute sql

sql="select curvalue from counttable where user='"&user&"'"

set rs=conn.Execute(sql)

'定义chgimg函数,将计数值用图形表示

function chgimg(curvalue)

dim s,i,g

s=cstr(curvalue)

for i=1 to len(s)

'请注意,在正式使用计数器时,图片的路径一定要使用实际路径

g=g & ""

next

chgimg=g

end function

'调用chgimg函数(传入计数器值)

toimg=chgimg(rs("curvalue"))

toimg="document.write(" & "'" & toimg & "')"

'输出

Response.Write(toimg)

rs.close

set rs=nothing

conn.Close

set conn=nothing

%

注:此文件不能带用其它html标志,否则将会出错!

● 如何在主页中显示计数器

完成了计数器的制作,接下来是享受我们的劳动成果的时候了,怎么来调用计数器呢?很简单,只需在欲显示记数器的位置插入下面代码就行了。

'请注意,在正式使用计数器时,调用的路径一定要使用实际路径

 
 
 
免责声明:本文为网络用户发布,其观点仅代表作者个人观点,与本站无关,本站仅提供信息存储服务。文中陈述内容未经本站证实,其真实性、完整性、及时性本站不作任何保证或承诺,请读者仅作参考,并请自行核实相关内容。
 
 
© 2005- 王朝網路 版權所有 導航