仓酷云

 找回密码
 立即注册
搜索
热搜: 活动 交友 discuz
查看: 722|回复: 8
打印 上一主题 下一主题

[学习教程] ASP编程:用ASP制作本人的谈天室

[复制链接]
乐观 该用户已被删除
跳转到指定楼层
楼主
发表于 2015-1-16 23:41:38 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

您需要 登录 才可以下载或查看,没有帐号?立即注册

x
ASP.NET和ASP的比较,技术上比较已经没什么可说的了.新一代在大部分程度来说当然是比旧一代好了.关键看你对所做软件的理解了.因人而定.会写的话也可能比ASP.NET写得更有效率和更方便重用谈天室|谈天室谈天室想必你必定往过吧,但想不想创建本人的谈天室呢?实在这一点都不难,ActiveServerScript供应了Application工具和Session工具,Application工具代表了一个ActiveServer使用程序,也就是一个Web网页,Session工具则暗示一个用户,代表一个用户对这个页面的一次会见,经由过程Application工具可让会见它的一切用户共享信息,并能够在Web服务器运转时代耐久地保留数据,而Session工具也能够在用户的一次会见时代耐久地坚持数据,使用这两个工具,就能够非常便利地制作本人的Chat使用程序。
----1、Application工具:

----1.属性:Application工具没有内置的属性,但用户能够界说本人的属性:

----Application(“属性称号”)=值,一旦分派了属性,它就会一向存在,直到Web服务器封闭服务,并且它能被一切用户读取,以是能够用它在用户之间发送发言内容。

----2.办法:当两个用户同时对Application属性的值举行写进操纵时,会呈现一方的修正被另外一方的操纵间接掩盖失落的情形,为了不这类征象,用户能够挪用Lock办法举行锁定,如许只要以后用户才干够对Application的属性举行操纵,用户完成操纵后挪用Unlock办法解锁,使得其他用户也能够修正Application的属性。

----3.事务:创立ActiveServer使用程序必要在Web服务器上寄存使用程序的假造主目次下创立Global.asa文件,它含有Application工具和Session工具的事务处置例程,一般,Application_Onstart事务用来界说使用级的属性。

----2、创立一个Chat使用程序:程序运转时以下图所示(略)

----1.设置使用程序的变量:这里需创建两个使用程序级的变量,gchars数组用来寄存用户的发言内容,gcounter用做计数器,把持页面的显现行数,在这里我们让页面最多显现比来的10行发言内容。当使用程序启动时这些变量必需举行初始化,以是它们的创立都要在Global.asa文件中的Application_onstart事务中:



<scriptlanguage="vbscript"runat="server">
subapplication_onstart()
dimlchars(10)
application("gchars")=lchars
application("gcounter")=0
endsub
</script>

----2.断定处置ASP的体例:当用户第一次哀求这个ASP文件时,用的是GET办法,然后,当用户输出完发言内容后提交时用的是POST办法,在这里表单是向本身提交的,以是这个ASP文件会被再次哀求,我们经由过程测试Request.ServerVariales(“Request_Method”)变量来断定文件被哀求的体例:IFRequest.ServerVariales(“Request_Method”)=“POST”then

----3.断定发言者:当用户第一次提扳谈话内容时需输出本人的姓名,一旦在txtname框中输出数据后,程序将创建一个会话级变量来寄存用户姓名,并主动显现在txtname框中,用户就不需再次输出了,除非你想用另外一个名字到场漫谈。



IFlen(request(“txtname”))>0then
Session(“ssname”)=request(“txtname”)
Endif
<h5>您的姓名:
<inputtype=“type”name=“txtname”
length=“20”value=<%=session(“ssname”)%>>

----

----4.处置用户的发言内容:起首要断定已为Chat写进的发言行数,为便利浏览,在这里将显现行数限制为10行,假如Application(“gcounter”)年夜于9,则将其置为0,然后将发言者姓名和内容一同寄存到Application(“gchars”)数组中:



Application(“gchars”)
(Application(“gcounter”))=Session(“ssname”)&
“:”&request(txttalk)

然后将计数器加1:Application(“gcounter”)=Application(“gcounter”)+1

----5.将数组内容写进到客户的扫瞄器中:用户提扳谈话内容后,程序必需将数组内容写到客户的扫瞄器中,让谈天室中的一切人都能看到被提交的发言内容:



ifapplication("gcounter")=0then
lstemp=application("gchars")(0)
else
forx=0toapplication("gcounter")-1
lstemp=lstemp&"<br>"&application("gchars")(x)
next
endif

----最初,用Response.write办法将lstemp变量的值写到客户的扫瞄器中往:



response.writelstemp

----上面给出Default.asp的完全代码:



<%response.expires=0
response.buffer=true%>
<html><head><title>Chatsample</title></head>
<body><center>
<h3>我的谈天室</h3></center><hr>
<%ifrequest.servervariables("request_method")="POST"then
iflen(request("txtname"))>0then
session("ssname")=request("txtname")
endif
application.lock
mcounter=application("gcounter")
mchars=application("gchars")
ifmcounter>9then
mcounter=0
endif
mchars(mcounter)=session("ssname")
&":"&request("txttalk")
mcounter=mcounter+1
application("gcounter")=mcounter
application("gchars")=mchars
application.unlock
endif%>
<%ifapplication("gcounter")=0then
lstemp=application("gchars")(0)
else
forx=0toapplication("gcounter")-1
lstemp=lstemp&"<br>"&application("gchars")(x)
next
endif
response.writelstemp%>
<hr><center>
<formaction="default.asp"method=postname="aspform">
<b><ahref="default.asp">
更新显现</a></b>
<h5>讲话:
<inputtype="text"name="txttalk"size="70"><br>
<h5>您的姓名:
<inputtype="text"name="txtname"length="20"
value=<%=session("ssname")%>>
<inputtype="submit"name="cmdpost"default="true"value="发送">
</form></center></body></html>

----以上代码在NT4.0、IIS4.0、IE4.0中</p>Windows本身的所有问题都会一成不变的也累加到了它的身上。安全性、稳定性、跨平台性都会因为与NT的捆绑而显现出来;
若相依 该用户已被删除
沙发
发表于 2015-1-20 11:13:32 | 只看该作者
我认为比较好的方法是找一些比较经典的例子,每个例子比较集中一种编程思想而设计的。
老尸 该用户已被删除
板凳
发表于 2015-1-29 06:56:08 | 只看该作者
哪些内置对象是可以跳过的,或者哪些属性和方法是用不到的?
愤怒的大鸟 该用户已被删除
地板
发表于 2015-2-5 23:44:36 | 只看该作者
ASP.Net摆脱了以前ASP使用脚本语言来编程的缺点,理论上可以使用任何编程语言包括C++,VB,JS等等,当然,最合适的编程语言还是MS为.NetFrmaework专门推出的C(读csharp),它可以看作是VC和Java的混合体吧。
不帅 该用户已被删除
5#
发表于 2015-2-14 06:03:14 | 只看该作者
他的语法和设计思路和VB完全相同,导致很多ASP的书都留一句“相关内容请参考VB的相关教材....”更糟糕的是,相当多的ASP教程混合了Javascript,VBscript等等脚本语言,搞的初学者。
再见西城 该用户已被删除
6#
发表于 2015-3-4 04:59:41 | 只看该作者
ASP也是这几种脚本语言中最简单易学的开发语言。但ASP也是这几种语言中唯一的一个不能很好支持跨平台的语言。  因为ASP脚本语言非常简单,因此其代码也简单易懂,结合HTML代码,可快速地完成网站的应用程序。
第二个灵魂 该用户已被删除
7#
发表于 2015-3-11 17:14:20 | 只看该作者
你可以通过继承已有的对象最大限度保护你以前的投资。并且C#和C++、Java一样提供了完善的调试/纠错体系。
兰色精灵 该用户已被删除
8#
发表于 2015-3-19 02:57:27 | 只看该作者
掌握asp的特性而且一定要知道为什么。
金色的骷髅 该用户已被删除
9#
发表于 2015-3-27 06:08:28 | 只看该作者
多看多学多思。多看一些关于ASP的书籍,一方面可以扩展知识面一方面可以鉴借别人是如何掌握、运用ASP的;多学善于关注别人,向同学老师多多学习,不论知识的大小;多思则是要将学到的知识灵活运用。
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|Archiver|手机版|仓酷云 鄂ICP备14007578号-2

GMT+8, 2024-12-23 10:18

Powered by Discuz! X3.2

© 2001-2013 Comsenz Inc.

快速回复 返回顶部 返回列表