设为首页
加入收藏
帮助中心
首页 | 红盾通告 | 信息中心 | ASP技术 | 数据库 | 网页设计 | 网管专栏 | OICQ攻略 | 墨客频道 | 网站运营 |
当前位置:首页 >> ASP技术 >> ASP应用 >> 正文
最新信息
·asp无限级分类加js收缩伸展…
·ASP读取EXCEL数据
·ASP编程操作Excel
·ASP编写了一个EXCEL上传程…
·ASP如何读取EXCEL工作表名…
·ASPJpeg和ASPUpload组件的…
·用ASP和SQL语句动态的创建…
·asp生成excel报表
·四大 FCKeditor 实战应用技…
·FCKeditor 2.0 的设置.修改…
资料搜索
热点信息
·asp生成excel报表
·Javascript+ASP制作树形菜…
·AspUpload组件的UploadedF…
·ASPJpeg和ASPUpload组件的…
·FckEditor中文配置手册详细…
·ASPUpload组件介绍
·金光ASP柱形图程序
·asp生成不重复的随机数字
·ASP读取EXCEL数据
·0-29内取15个不同的随机数…
推荐信息
·用ASP生成二维饼图
·一个取图片尺寸的类,支持…
·随即文件名
·ASP 随机图片
·本地图片,音乐等ASP防盗代…
·ASPJpeg和ASPUpload组件的…
·如何实现网上考试?
·用ASP打开远端MDB文件的方…
·ASP编写完整的一个IP所在地…
·用ASP实现远程批量文件改名


Google
 
ASP制作多用户版计数器
〖作者:郭武柱 | 编辑:Cloudy | 浏览:人次〗

  使用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

<form method="POST" action="getcl.asp">
<p>用 户 名<input type="text" name="user" size="20"></p>
<p>计数器值<input type="text" name="curvalue" size="20"></p>
<p>主页地址<input type="text" name="pageurl" size="20"></p>
<p><input type="submit" value="提交" name="B1"><input type="reset" value="全部重写" name="B2"></p>
</form>

  表单中的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"<title>申请出错</title>"
Response.Write"对不起,用户名已经存在!</title>"

'结束向下处理,要求用户重填
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 & "<img src=1/" & mid(s,i,1) & ".gif align=bottom>"
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标志,否则将会出错!

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

<script src="counter.asp?user=用户名"></script>

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


录入时间:2006-06-04 18:47:19 [打印本页] [关闭窗口] [返回顶部]
特别声明: 本站除部分特别声明禁止转载的专稿外的其他文章可以自由转载,但请务必注明出处和原始作者。文章版权归文章原始作者所有。对于被本站转载文章的个人和网站,我们表示深深的谢意。如果本站转载的文章有版权问题请联系编辑人员,我们尽快予以更正。

Copyright © 2006-2014 0733168.Com Inc All Rights Reserved
关于我们 | 广告合作 | 联系我们 | 法律声明 | 友情链接 | 意见反馈
本站所收录信息、社区话题、及本站所做之广告均属其个人行为,与本站立场无关
湘ICP备06008436号