发布时间:2011-02-18 19:40:03作者:知识屋
这个程序将记数器的数字放在ACCESS数据库中,当然你也能用你希望其它的ODBC数据源.这个程序从URL中读取记数信息.如下:
< IMG src=id=MYTEST&seq=default&cells=7 >
参数
id
客户网页的标致(即用户名).每次你用一个新的ID,那么就会有一个新的记录插入数据库中.如果这个ID是原来就存在,那么它的count就增加1.如果你不想让客户自动启动一个ID,而需要注册,那么你就将自动插入的值,赋为False.
seq
可选项.用于选择计数器图片的式样,在客户端所显示的图片的名字就为.gif.缺省值defalut.gif,而且这个defalut.gif必须放在当前工作的目录中!
cells
可选项.计数结果显示的位数,缺省是5位(这个值你在程序中,也可以调节) 怎样运行这个程序
把这段程序拷贝到服务器中你想要的地方.
创建一个数据源Webcounter.这个数据源中必须有个表名字为main,以下是这个表中的字段:
以下为引用的内容:
< table border=1 cellpadding=3 cellspacing=1 >
< tr >
< th >Field< /th >
< th >Type< /th >
< th >Indexed< /th >
< th >Means< /th >
< /tr >
< tr >
< td >ident< /td >
< td >AutoNumber< /td >
< td >Yes< /td >
< td >For your needs< /td >
< /tr >
< tr >
< td >id< /td >
< td >Text< /td >
< td >Yes< /td >
< td >用户名< /td >
< /tr >
< tr >
< td >count< /td >
< td >Number< /td >
< td >No< /td >
< td >计数数字< /td >
< /tr >
< /table >
需要时给数据库赋一个的权限
建立一个存放GIF图形的目录,在这个目录中至少要放一个default.gif的图形组.适当时给这个文件以权限.
给这个目录中放一些能被10整除的数字图形.
以下为引用的内容:
< table width=100% border=1 cellspacing=1 cellpadding=2 >
< tr >
< td bgcolor=#ccffff >File < b >counter.asp< /b > < /td >
< /tr >
< tr >
< td bgcolor=#ffffcc >< pre >
< %
Response.ContentType=image/gif
Response.Expires=0
'The directory where GIF bars are placed. Ends with
workdir=c:gifbars
'Set this to False if you want to disable auto inserting
'new counter records to database on every hit with unique
'id string
auto_insert=True
id=Trim(Request.QueryString(id))
seq=Trim(Request.QueryString(seq))
if seq= then seq=default
cells=Trim(Request.QueryString(cells))
if cells= then cells=5 else cells=cells*1
set conn=Server.CreateObject(ADODB.Connection)
conn.Open Webcounter
sql=select count,ident from main where id=' & id & '
set rs=conn.Execute(sql)
if not rs.EOF then
count=rs(count)+1
ident=rs(ident)
rs.close()
conn.Execute(update main set count=count+1 where ident= & ident)
conn.close()
ShowNumbers()
else
rs.close()
if auto_insert=True and id< > then
conn.Execute(insert into main (id,count) values (' & id & ',1))
count=1
ShowNumbers()
end if
conn.close()
end if
Sub ShowNumbers()
set g=CreateObject(shotgraph.image)
filename=workdir & seq & .gif
if g.GetFileDimensions(filename,xsize,ysize,pal)< >1 then Exit Sub
xdigit=xsize10
g.CreateImage xdigit*cells,ysize,UBound(pal)+1
g.InitClipboard xsize,ysize
g.SelectClipboard True
for i=0 to UBound(pal)
g.SetColor i,pal(i,0),pal(i,1),pal(i,2)
next
g.ReadImage filename,pal,0,0
for i=1 to cells
k=GetDigit(count,cells-i)
g.Copy (i-1)*xdigit,0,xdigit,ysize,k*xdigit,0,SRCCOPY
next
Response.BinaryWrite g.GifImage(-1,1,)
End Sub
Function GetDigit(number,position)
number1=number(10^position)
tmp=number110
GetDigit=number1-tmp*10
End Function
% >
< xmp >
< /pre >
< /td >
< /tr >
< /table >
< hr >< /span >< /td >
< /tr >
< tr >
< td width=50% > < /td >
< td width=50% >< br >< /td >
< /tr >
< tr >
< td colspan=2 align=right >
< img border=0 src=images/bbstitle.gif >< a id=hlkAddMsg href=/AddMsg.aspx?id=234 style=color:red >发表评论< /a >
< img border=0 src=images/mail.gif >< a id=hlkMailTo href=/MailTo.aspx?id=234 >邮寄本页< /a >
< img border=0 src=images/print.gif >< a href=javascript:window.print() >打印本页< /a >
< img border=0 src=images/profile.gif >< a href=javascript:void(null) onclick=if(!document.execCommand('SaveAs','show.aspx',1)) return false; >保存本页< /a >[!--empirenews.page--]分页标题[/!--empirenews.page--]
< img border=0 src=images/ask.gif >< a href=bbs/index.asp >您有疑问< /a >
< /td >
< /tr >
< tr bgcolor=#97B9FF >
< td width=50% >< b >< font color=#FFFFFF >相关文章< /font >< /b >< /td >
< td width=50% >< b >< font color=#FFFFFF >相关评论< /font >< /b >< /td >
< /tr >
< tr >
< td width=50% valign=top >
< /td >
< td width=50% valign=top >
< /td >
< /tr >
< tr >
< td width=50% >
< /td >
< td width=50% align=right >< img border=0 src=images/more.gif >< a id=hlkRela >< /a >< /td >
< /tr >
< /table >
< /td >
< /tr >
< /table >
< /td >
< /tr >
< /table >
< /body >
< /html >
2013-08-11
ASP程序员必备的知识
网站建设:ASP网站防范黑客技巧
ADO 存取数据库时如何分页显示
ASP中set与dim的区别(自己的理解)
为你的ASP程序作一个负载测试
ASP用户登录模块的设计
asp获取文件md5值
asp生成静态HTML(动态读取)
ASP.NET中获得URL重写前的原始地址