360教程:是一个免费提供流行杀毒软件教程、在线学习分享的学习平台!

ASP 3.0高级编程(106)

时间:2024/6/12作者:未知来源:360教程人气:

[摘要]%7C & %26 %7D ( %28 + %2B ) %29 < %3C / %2F = %3D : %3A > %3E ; %3B Chr(10) 忽略 [[/TD] %5...

%7C

&
%26
}
%7D

(
%28
+
%2B

)
%29
<
%3C

/
%2F
=
%3D

:
%3A
>
%3E

;
%3B
Chr(10)
忽略

[[/TD]
%5B
Chr(13) [TD]
%0D

4.  Server对象的URLEncode方法
Server对象提供了可以用来把任意字符串转换成相应的合法HTTP URL的方法。可以利用示例网页对这个名为URLEncode的方法进行练习,如图4-29所示:

图4-29  使用URLEncode方法的屏幕
这里,输入的值作为URL是非法的,它包含了空格和ANSI代码大于126的字符。对这个值,使用URLEncode方法的结果是所有的空格被替换成一个加号,版权符号被替换为 %A9,如图4-30所示:

图4-30  使用URLEncode方法的结果
(1)    示例网页代码的功能
在示例网页中,处理这个功能的代码非常简单,仅仅检查是否单击了URLEncode方法对应的按钮,如果单击了,把对应的文本框中的值传递给Server.URLEncode方法并显示结果:
If Len(Request.Form(“cmdURLEncode”)) Then
       strValue = Request.Form(“txtURLEncode”)
       Response.Write “<B>Results:</B><BR>Server.URLEncode (“ & QUOT & strValue _
                     & QUOT & “) returned <B>” & QUOT & Server.URLEncode(strValue) _
                     & QUOT & “</B><HR>”
End If
(2)    对HTML元素和其他链接使用URLEncode
URLEncode方法更普遍地用于把<A>元素或其他链接的值写到ASP网页。例如,如果在查询字符串中建立了一系列的链接,这;些链接包含来自一个数据库的值,首先应该对这个字符串使用Server.URLEncode方法:
       <%
       strValue = Request.Form(“txtSomeValue”)
       
       ‘Create the full URL for the link as an HTTP-legal string
       strURL = http://mysite.com/books.asp?title= & Server.URLEncode(“strValue”)
       ‘Make sure we don’t have any non-legal HTML characters in the page text
       strLink = Server.HTMLEncode(“strValue”)
       %>
       …
       <A HREF=”<% = strURL %>”><% = strValue %></A>
       …
如果放入字符串strValue的值包含标题“Active Server Pages&copy;”,将得到由这个代码段创建的如下所示的HTML:
<A HREF=http://mysite.com/books.asp?title=Active+Server+Pages%A9>
Active Server Pages&copy;</A>
注意,我们不仅仅使用Server.URLEncode方法来建立一个合法的URL字符串,而且还对链接的文本使用了Server.HTMLEncode方法,以确保把所有非法的字符转换为合适的HTML等价实体。
和HTMLEncode方法一样,不用反译码ASP网页中的URL编码值。IIS自动地实现URL编码字符串的转换,该字符串在HTTP请求中转换为它们原先格式,使得它们在内置对象中是可用的。

4.4 小结
       在这一章中,通过在Web服务器上发生的处理过程,讨论了为Web网页提供动态内容所涉及的一些问题。这些问题的一部分不是直接地与ASP本身相关,但对这些问题的理解,将有助于理解基本的处理工作是如何进行的。
       本章介绍了IIS如何支持传统的服务器端包含指令,有一些指令可能仍然是有用的。特别是,#exec指令对执行系统命令以及集成原有的应用程序都是有用的。同时也讨论了一条特别的服务器端包含指令——#include语句,了解了在ASP网页内部使用这条命令的相关问题。
       然而,ASP Server对象占了本章的大部分。它提供了在ASP网页内管理服务器端处理过程的方法。在Web服务器和ASP的正确的环境中,它可用来创建其他对象、应用程序或组件的实例。它同时也提供了一系列的方法,这些方法允许执行其他的网页或资源,以及以正确方式格式化信息,以便在ASP脚本和网页中使用。       Server对象也带来了一个新的ASP内置对象:ASPError对象,它为脚本提供较好的错误处理方法。现在可以提供“正统的”脚本错误处理,并获取有关错误的信息。



关键词:ASP 3.0高级编程(106)




Copyright © 2012-2018 360教程(http://www.360sd.cn) .All Rights Reserved 网站地图 友情链接

免责声明:本站资源均来自互联网收集 如有侵犯到您利益的地方请及时联系管理删除,敬请见谅!

QQ:1006262270   邮箱:kfyvi376850063@126.com   手机版