ASP编程:编写“公允”的ASP图形计数器
ActiveServerPage技术为应用开发商提供了基于脚本的直观、快速、高效的应用开发手段,极大地提高了开发的效果。在讨论ASP的安全性问题之前,让我们来看看ASP是怎么工作的。“手艺六合”中的《编写ASP图形计数器》一文,具体的申明了怎样使用盛行的ASP来编写计数器。可是,十全十美的是,假如某个用户重复点击“革新”按钮,那末计数器仍是要不休的增添的,这对网站点击率评选来讲是不公允的,也得到了计数器做为一般统计功效的感化。怎样在手艺上制止这类情形的产生呢?我以为要避免上彀用户一连按下“革新”计数器也一连增添的成绩,最好的举措就是使用ASP的Session工具,我们能够借助Session工具起首判别该用户是不是为新毗连者,假如是,那末
IsEmpty(Session("hasbeenConnected"))=True,也就是说,Session("hasbeenConnected")是空的。那末,运转程序,使计数器加1,然后将该用户的Session("hasbeenConnected")设置为True,也就是说,这个用户已不是新的毗连者,不管他怎样一连按下“革新”按钮,计数器也不会再增添。
分离《编写ASP图形计数器》一文,最初的站点计数器的源程序应当是:
<html>
<head>
……
</head>
<body>
<%dimtms,counter,countlen
dimimages(20)
h1="<p><fontcolor=#8000ff>这是一个ASP计数器</font></p>"
IfIsEmpty(Session("hasbeenConnected"))then
setrs=server.createobject("adodb.recordset")
application.lock
rs.open"updateaspcountsetcountss=countss+1","dsn=userdbs",3,3
application.unlock
Session("hasbeenConnected")=True
EndIf
setrs=server.createobject("adodb.recordset")
rs.open"select*fromaspcount","dsn=userdbs",3,3
rs.movefirst
counter=rs(0)
countlen=len(counter)
tms="<h1><fontcolor=#8000ff>您是第</font>"&&counter&&"<fontcolor=#8000ff>位会见者!</font></h1>"
response.write(tms)
fori=1tocountlen
images(i)="<imgsrc="&&mid(counter,i,1)&&".gif></img>"
next
response.writeimages(1)&&images(2)&&images(3)&&images(4)&&images(5)&&images(6)&&images(7)
rs.Close
%>
</body>
</html>
写软件都是想的时间比写的时间要长的.如果反过来了就得看看是什么原因了.另外大家可以回去问问公司里的小MM.(一般企业里,跟你们交付软件接触得最多的是她们) 完全不知道到底自己学的是什么。最后,除了教程里面说的几个例子,还是什么都不会。 在平时的学习过程中要注意现学现用,注重运用,在掌握了一定的基础知识后,我们可以尝试做一些网页,也许在开始的时候我们可能会遇到很多问题,比如说如何很好的构建基本框架。 ASP.Net和ASP的最大区别在于编程思维的转换,而不仅仅在于功能的增强。ASP使用VBS/JS这样的脚本语言混合html来编程,而那些脚本语言属于弱类型、面向结构的编程语言,而非面向对象,这就明显产生以下几个问题: 尽管MS自己讲C#内核中更多的象VC,但实际上我还是认为它和Java更象一些吧。首先它是面向对象的编程语言,而不是一种脚本,所以它具有面向对象编程语言的一切特性,比如封装性、继承性、多态性等等,这就解决了刚才谈到的ASP的那些弱点。 哪些内置对象是可以跳过的,或者哪些属性和方法是用不到的? 我认为比较好的方法是找一些比较经典的例子,每个例子比较集中一种编程思想而设计的。 最近在学asp,不要问我为什么不直接学.net,因为公司网站是asp做的所以有这个需要,卖了本书asp入门到精通,对里面的六大内置对象老是记不住,还有很多属性和方法看的头晕。 如何学好ASP,以前也有人问过,把回答给你转过来看看能否对你有帮助:
页:
[1]