ASP教程之从ASP迁徙至ASP+ --处置会话变量(Sess...
asp对于服务器的要求较高,一般的服务器如果访问量一大就垮了,不得不重启。asp+|session|变量现存的ASP版的eVille克制对站点的某些部分的会见,除非用户已登录。一些功效像检察未来的优惠特价,报名上课,和懂得本人以后的退学情况是受限定地区。假如想在未登录的形态下会见这类地区,你只会被从头导回到登录页面。用户在一份表格中输出他们的用户名与暗码,然后与数据库的先生表举行对照,假如登录乐成,一个名为blnLoggedIn的会话变量便被设为真。这类办法对这个站点是无效的,由于它架设在一台单一的服务器上。别的的办法将被用于webfarms上的web使用程序,好比ASP+的会话存储,或SQL的会话存储。===确认用户输出===
代码重写事情量最年夜的部分在于那些猎取用户输出的页面,用户输出这些信息以挂号成为eVille会员。有一个叫signup.asp的页面,用来让用户输出他们的主要信息,现有会员也可籍此更新信息。未转换前,表格的数据经由过程HTTPPost体例递交给一个叫cookie.asp的页面。该页会确认表格中的数据,假如存在毛病,将用户导回signup.asp同时在querystring中加上毛病号。接着一个SelectCase语句会将基于毛病号的输入举行转换。我们反省的毛病包含:
*未输出用户名
*未输出暗码
*暗码与暗码确认不符
*用户名在数据库中已存在
经由过程将一切的输出域(field)转换成服务器控件,然后增加RequiredFieldValidators,能够轻松处置头两个大概产生的毛病。RequiredFieldValidator只须复杂确认经ControlToValidate域判别后的服务器控件中有输出值:
<tr>
<tdvalign="top">
<asp:RequiredFieldValidatorrunat=server
ControlToValidate="txtUserName"
Display="static"
errorMessage="<b>*</b>"
ForeColor="#CC3300"/>
</td>
<tdvalign=top>UserName:</td>
<tdvalign=top>
<asp:TextBoxid="txtUserName"size=25runat=server/></td>
</tr>
这类计划是云云复杂以致我们决意在把RequiredFieldValidator增加到一切的表格输出域中。在ASP中,我们一般会用一个VBScript函数来查验输出值,而如今我们只需把RequiredFieldValidator增加到每一个我们想确认的控件中往。
至于暗码与暗码确认的对照,我们可使用ASP+的CompareValidator。该控件同意我们设置ControlToValidate,ControlToCompare和Operator属性(在本例中是一个即是号,即Equal)。被指定的两个控件用Operator(即操纵符)属性相互对照。与传统的If...Then语句比拟,这类办法分明要复杂,快速:
<asp:CompareValidatorrunat=server
ControlToValidate="txtConfirm"
ControlToCompare="txtPassword"
Type="String"
Operator="Equal"
Display="dynamic"
errorMessage="<b>*</b>"
ForeColor="#CC3300"/>
基于分歧的扫瞄器,ASP+validator控件会响应实行客户真个JavaScript考证(针对IE4.0以上版本),大概实行服务器端考证(针对别的情形)。不管考证是怎样实行的,服务器真个考证是必不成少的(以制止某些调皮的家伙在客户端考证上耍名堂)。
如今轮到最初一个毛病了。假设提交的用户名已存在,这就请求一点点页面的修改。到今朝为止,我们已用能够实行服务器端与客户端考证代码的服务器控件完成了一切的ASP+考证。至于最初这个毛病,我们要供应一些自界说的服务器端考证,由于我们必要会见数据库以懂得被哀求的用户名是不是已存在。我们能够使用ASP+CustomValidator控件来办理这一成绩。
</p>对于中小型web应用来说,php有很强的竞争力,linux+apache+mysql+php(lamp)的组合几乎可以胜任绝大多数网站的解决方案,对于大型应用来讲,对于系统架构要求更高,需要有成熟的框架支持,jsp的struts是个不错的框架,国内介绍它的资料也非常多,应用逐渐广泛起来。asp就不用说了, 以HTML语言整合(HTML负责界面上,ASP则负责功能上)形成一个B/S(浏览器/服务器)模式的网页程序。 完全不知道到底自己学的是什么。最后,除了教程里面说的几个例子,还是什么都不会。 你可以通过继承已有的对象最大限度保护你以前的投资。并且C#和C++、Java一样提供了完善的调试/纠错体系。 运用ASP可将VBscript、javascript等脚本语言嵌入到HTML中,便可快速完成网站的应用程序,无需编译,可在服务器端直接执行。容易编写,使用普通的文本编辑器编写,如记事本就可以完成。由脚本在服务器上而不是客户端运行,ASP所使用的脚本语言都在服务端上运行。 用户端的浏览器不需要提供任何别的支持,这样大提高了用户与服务器之间的交互的速度。 我可以结合自己的经验大致给你说一说,希望对你有所帮助,少走些弯路。 他的语法和设计思路和VB完全相同,导致很多ASP的书都留一句“相关内容请参考VB的相关教材....”更糟糕的是,相当多的ASP教程混合了Javascript,VBscript等等脚本语言,搞的初学者。 ASP.Net摆脱了以前ASP使用脚本语言来编程的缺点,理论上可以使用任何编程语言包括C++,VB,JS等等,当然,最合适的编程语言还是MS为.NetFrmaework专门推出的C(读csharp),它可以看作是VC和Java的混合体吧。 我想问如何掌握学习节奏(先学什么再学什么)最好详细点?
页:
[1]