分享
 
 
 

使用ASP脚本技术

王朝asp·作者佚名  2006-12-16
窄屏简体版  字體: |||超大  

在VB脚本中,你不必定义变量或者象在其他脚本语言中明确的定义他们的类型。一个变量在你第一次使用的时候存在。但是,这个特性让你的代码广泛的存在打字稿中。如果你在代码中错误的定义一个变量名,那么一个新的变量将被创建。你的脚本可能不能正常的工作,而你也有可能不能意识到这个错误。

转自:动态网制作指南 www.knowsky.com

在你使用变量的时候,你要养成定义他们的习惯,你所需要做的就是测试Dim variableName:

%<%Dim IntUserID%>%

IntUserID现在可以使用了。为了另外一个安全网, 使用Option Explicit. 如果你打开Option Explicit, 你将会在使用变量的任何时候发出错误的信号。这个听起来很乏味,但是当你的脚本发生错误的时候,他可以给你一些线索,否则你要艰难的找出错误出在哪里。

为了使用Option Explicit, 将下面的内容作为你脚本的第一行内容:

<% Option Explicit %>

如果你想要看看当你忘记定义了变量的时候会发生什么状况,可以运行下面这点代码:

<% Option Explicit %>

<:% strName = Request.Form("Name") %>

因为strName变量 (Dim strName) 没有被定义,你将会看到发生下面这些错误:

Microsoft VBScript runtime error '800a01f4'

Variable is undefined: 'strName'

/e/oe-test.asp, line 10

使用Len

你可以使用Len(string)函数来确定文本的串的长度:

<%

IntString = "This is a Simple Sentence."

IntStringLength = Len(IntString)

Response.Write "There are " & IntStringLength & " characters (including spaces) in the sentence shown below:"

Response.Write "" & IntString & ""

%>

如果你想知道Len是如何手动工作,你可以想想你要求用户输入他们的五位数字代码或者三位PIN的形式。使用Len,你效验是否输入了足够的数字。

使用Trim

Trimming 串是你想要在开始就获得的东西。很多时候,一个串在开始或者结束的时候有一个额外的空间,如果你不平衡它,你可能会担心浪费时间到这些变量上。

<% strName = Request.Form("Name")

strCheckName = "Amy Cowen"

If strName = strCheckName THEN

Response.Write "Success! The names matched."

Else

Response.Write "Sorry. The names do not match."

End if

%>

如果strName的值是 " Amy Cowen",因为那个是我怎样将它输入到形式box中,然后测试两个变量是否一样,结果不是,因为 "Amy Cowen" 不是" Amy Cowen."

同样地,如果你将Name输入到URL中:

<% Response.Write " & objRec("Name") & "">Your Site" %>

如果Name中的记录的任何部分有额外的空间,你将迅速的执行错误问题。

你可以修正一整个串后者在左边或者右边执行进程:

<% strComments = Request.Form("Comments")

strComments = Trim(strComments)

%>

假定用户已经输入::

" I am having problems installing the software I downloaded. "

上面的修整语句将会打散额外的空间,只留下下面的内容:

"I am having problems installing the software I downloaded."

现在,回到我们的 " Amy Cowen" 例子,如果我添加了下面的脚本,我们就会成功:

strName = Trim(strName)

在右边修整, 使用Rtrim(string). 在左边修整, 使用Ltrim(string).

转换

当你开始使用和VB差不多的语言的时候,你会犯一些简单的错误,比如比较整型的512和串512。如果你认识到前一个512和后一个512是不一样的,你可以想想为什么给出的脚本不能正常工作。

假想一下,你传送一个文件的ID到ASP脚本中,使用Request.QueryString,你会确定这个文件的ID就是用户想要编辑的。你需要从数据库中为记录输入一些信息并将它们显示在屏幕上。数据库中的ID和整型差不多,特别地,如果你在那个区域使用了AutoNumber性能。你输入的ID事实上是一个串。因此,这两个永远不可能匹配除非你转换成相同的类型。

Request.QueryString:

使用FileSystemObject, 你可以测试一个文本—比如, *.html, *.asp, *.inc., *.gif—或者目录的存在。如果文件存在,你可以想要一连串的时间发生。如果文件不存在,你可能需要其他的事件发生,使用下面的代码: <%

sPath="/profiles/" & strFileName & ".asp"

sFile=Server.MapPath(sPath)

Set fe=Server.CreateObject("Scripting.FileSystemObject")

if fe.FileExists(sFile) THEN

'do something

Response.Write "Yeah! I found it!."

Response.Write "You can access that file by "

Response.Write "<A HREF=""" & sPath & """>Clicking Here</A>."

else

'do something

Response.Write "Sorry. The requested file does not exist."

end if

%>

为了简单的测试你这个文件,添加脚本到最上面:

strFileName = "name"

' First assign the name of a file you have to this variable.

' strFileName holds just the name, not the extension or the path.

' Make sure you change the path for sPath to the virtual directory your file is in

' Run the script.

' Then come back and change the strFileName variable to the name of a file

' you do NOT have.

' Run the script.

改变被输入的代码为一个整型是非常容易的并且可以让你以后的工作变得容易一点,样本的格式是这样的:

<%

dim intUserID intUserID = Request.QueryString("userID")

intUserID = CInt(intUserID)

' intUserID is now an integer.

%>

你同样也可以注释你的ASP代码并使用它们。

注释代码

在ASP中,一个脚本在它被发送到浏览器之前就被执行,所以,你不需要使用普通的HTML注释标签来从旧的浏览器隐藏脚本。事实上,你的脚本不会在HTML源中显示,因为那个源代码被浏览器交出去了,所以,旧的浏览器不会突然的发射任何代码到屏幕上。

你可能想要注释来注释你的ASP脚本,在VB脚本中,你可以使用省略符来记录注释:

<%

currentdate = now

' make sure you use quotation marks around the HTML code

' the & serves to concatenate the string

Response.Write "Today is: " & currentdate & "<BR>"

%>

在ASP脚本中使用//来表示注释

使用包含

如果以前你使用过.shtml文件,你可能已经熟悉了包含的工作过程,如果没有,我们将一步一步告诉你如何使用。

一个包含是容量,它存储在一个单独的文件中。在标准的HTML中,包含通常使用.inc扩展。在ASP中,你使用.asp,.txt或者.inc扩展名。接着你将调用文件到HTML代码中。当HTML文件被发送,包含文件从特殊文件中出来并直接写到屏幕上作为HTML的内容。因此,如果你做一个视图源代码,你看到的显示页面和你输入的是一样的效果。

对于一个普通的HTML来说,当为站点创建一个模版的时候,它会节省很多的时间。头部,页脚和导航元素是显示在你大量页面中的一部分。当你使用包含的时候,你就要输入文件一次并在需要的时候调用它。这有几个优点:

更新内容的时候,你只需要更新一个文件。

包含meat是从HTML页面中隔离的,所以任何人想对内容做出修改都可以避免弄乱脚本。

你的核心HTML文件更小和更实用。

在ASP中,包含是无价的。你可以一遍又一遍的使用脚本,甚至一些时候可以象一个连接串那么简单的存储在包含中,并且,它可以在不可利用的页面删除。

为了使用包含文件,你使用这些格式的任意一个:

<!-- #INCLUDE FILE="filename.inc" -->

或者

<!-- #INCLUDE VIRTUAL="/filename.inc" -->.

文件引用包含使用了相关的路径。VIRTUAL引用一个绝对的路径到相关的服务器上。如果你想移动目录和文件,最简单的方法就是默认使用VIRTUAL,这样在后来你就不会遇到一些意想不到的错误。另外一方面,当你测试文件的时候,你需要利用文件,因为他依靠你如何设置的个人服务器。

在标准的HTML中,你一般都给你的包含文件使用.inc后缀。在ASP中,你能使用.asp。这个可以防止你的文件可以轻易的别他人打开并阅读。

 
 
 
免责声明:本文为网络用户发布,其观点仅代表作者个人观点,与本站无关,本站仅提供信息存储服务。文中陈述内容未经本站证实,其真实性、完整性、及时性本站不作任何保证或承诺,请读者仅作参考,并请自行核实相关内容。
2023年上半年GDP全球前十五强
 百态   2023-10-24
美众议院议长启动对拜登的弹劾调查
 百态   2023-09-13
上海、济南、武汉等多地出现不明坠落物
 探索   2023-09-06
印度或要将国名改为“巴拉特”
 百态   2023-09-06
男子为女友送行,买票不登机被捕
 百态   2023-08-20
手机地震预警功能怎么开?
 干货   2023-08-06
女子4年卖2套房花700多万做美容:不但没变美脸,面部还出现变形
 百态   2023-08-04
住户一楼被水淹 还冲来8头猪
 百态   2023-07-31
女子体内爬出大量瓜子状活虫
 百态   2023-07-25
地球连续35年收到神秘规律性信号,网友:不要回答!
 探索   2023-07-21
全球镓价格本周大涨27%
 探索   2023-07-09
钱都流向了那些不缺钱的人,苦都留给了能吃苦的人
 探索   2023-07-02
倩女手游刀客魅者强控制(强混乱强眩晕强睡眠)和对应控制抗性的关系
 百态   2020-08-20
美国5月9日最新疫情:美国确诊人数突破131万
 百态   2020-05-09
荷兰政府宣布将集体辞职
 干货   2020-04-30
倩女幽魂手游师徒任务情义春秋猜成语答案逍遥观:鹏程万里
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案神机营:射石饮羽
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案昆仑山:拔刀相助
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案天工阁:鬼斧神工
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案丝路古道:单枪匹马
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案镇郊荒野:与虎谋皮
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案镇郊荒野:李代桃僵
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案镇郊荒野:指鹿为马
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案金陵:小鸟依人
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案金陵:千金买邻
 干货   2019-11-12
 
推荐阅读
 
 
 
>>返回首頁<<
 
靜靜地坐在廢墟上,四周的荒凉一望無際,忽然覺得,淒涼也很美
© 2005- 王朝網路 版權所有