|
马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。
您需要 登录 才可以下载或查看,没有帐号?立即注册
x
asp,jsp,php是web开发的三大技术,asp简单易用且有microsoft做靠山,jsp功能强大是因为有java支持,php则开源跨平台.在国内,asp应用范围最广,jsp发展势头最猛,php则处于劣势.这可能与公司的支持以及技术的培训有关.request|成绩在ASP中,常人都喜好间接利用Request(“参数”)来取得从上一个页面传来的参数,可是如许很简单发生凌乱,招致数据不准确。
好比,假如上一个页面(A.ASP)中有一个文本框<Inputname="xxx"value="1900">,而且你利用"B.ASP?xxx=1999"来挪用第二个页面(B.ASP)的话,那末你在B.ASP中利用Request("xxx")失掉的参数xxx的值将是"1999",而不会是你想要失掉"1900";若想要失掉URL前面的谁人xxx的值,应该利用Request.QueryString("xxx");若想要失掉A.ASP中的谁人xxx的值,应该利用
Request.Form("xxx"),而且谁人文本框要在一个Form内里才能够。
可是,有的时分,利用Request("参数")反而会有很好的效果,不信任?那就一同来看看上面这个例子吧。
好比,我们要做一个关于查找纪录的搜刮引擎,那就最少要有两个页面:
承受查询前提的页面(A.ASP)和显现查询了局的页面(B.ASP),而且因为查询到的数据会有良多,我们必要在B.ASP对查找到的纪录举行分页显现,即:
查询参数------->分页显现(革新本人)<--|
|___________________|
在A.asp中有一个文本框<Inputtype=textname="year">,是用来让用户输出查询前提的,B.asp要依照传送来的参数year来显现属于那一年的一切纪录。依照我们方才讲到的那种办法,代码分离以下:
A.asp:
<html>
<body>
<formname="search"method="post"action="B.asp">
<Inputtype=textname="year">
<Inputtype=submitname="ok"value="查询">
</form>
</body>
</html>
B.asp:
<%
year=Request.Form("year")
%>
<html>
<body>
。。。。。。
<Ahref="B.asp?page=<%=page%>&year=<%year%>">下页</A>
。。。。。。
</body>
</html>
天然,第一次提交到B.asp的时分,可使用Request.Form("year")失掉谁人前提year,可是B.asp要分页,也就是说他要革新本人,以便显现全体的纪录,可是由于B.asp中并没有这个文本框year,以是利用Request.Form("year")失掉的将会是一个空值,这时候候就是Request("year")显现能力的时分了,能够如许修正B.asp:
<html>
<body>
。。。。。。
<Ahref="B.asp?page=<%=page%>&year=<%request("year")%>">下页</A>
。。。。。。
</body>
</html>
如许,当第一次挪用B.asp的时分,取得的是A.asp中谁人文本框中的值(用户输出的);翻页的时分挪用B.asp取得的是“B.asp?...&year=???”内里的值,也就是URL中的值。
以是说凡事都有它的两面性,Request也不破例哦。
(以上程序均在WinNT4.0英文版(SP4),IIS4.0,IE4.x/IE5.x下测试经由过程)
</p>由于ASP还是一种Script语言所没除了大量使用组件外,没有办法提高其工作效率。它必须面对即时编绎的时间考验,同时我们还不知其背后的组件会是一个什么样的状况; |
|