使用ASP脚本技术

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

在你使用变量的时候,你要养成定义他们的习惯,你所需要做的就是测试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."