日期:2010-07-11  浏览次数:20775 次

  用户在访问站点时经常遇到一些烦人的信息,比如他们经常不知何故地在没有实际提交数据给表单时就到了下一个页面,或者经常达到一个页面,它是以查询字符串的形式转来的,比如?ID=236454。

  如果页面没有得到信息,就会产生一个大错误。这经常发生在页面寻找ID或者其他一些信息时,而这时用户是使用书签或者搜索引擎连接到这个页面的。所以,页面需要的信息丢失了,页面结束。

  你可以通过检查来了解是否有数据被提交,从而控制这种情况的发生,然后,根据情况显示特定的错误信息,或者执行其他的动作,比如重定向到想要的页面。

  在下面的3个例子中,仅仅在屏幕上显示一个信息。

  将这段代码直接放置在<% @ LANGUAGE="VBSCRIPT" %>下面。

对于一个表单,使用POST方法

< %
If Request.Form = "" Then
Response.Write("< p align=""center"" >< font face=""Arial"" >There Was An
Error.< br >" & vbCrLf)
Response.Write("No Data Was Posted.< /font >
" & vbCrLf)
Response.End
End If
% >

  对于一个表单,使用PUT和GET方法。这同样适用于从带有查询字符串连接而来的页面,比如?ID=236454

< %
If Request.Querystring = "" Then
Response.Write("< p align=""center"" >< font face=""Arial"" >There Was An
Error.< br >" & vbCrLf)
Response.Write("No Data Was Posted.< /font >
" & vbCrLf)
Response.End
End If
% >

  为了含概上面例子中的情况,要做下面的工作。尽管还有简单的方法,但是这个例子对于初学者,将是很好的学习基本原理的方法。

< %
IsData = 0
If Request.Form < > "" Then IsData = IsData + 1
If Request.Querystring < > "" Then IsData = IsData + 1

If IsData = 0 Then
Response.Write("< p align=""center"" >< font face=""Arial"" >There Was An Error.< br >" & vbCrLf)
Response.Write("No Data Was Posted.< /font >
" & vbCrLf)
Response.End
End If
% >

  或者

< %
IsData = "No"
If Request.Form < > "" Then IsData = "Yes"
If Request.Querystring < > "" Then IsData = "Yes"

If IsData = "No" Then
Response.Write("< p align=""center"" >< font face=""Arial"" >There Was An Error.< br >" & vbCrLf)
Response.Write("No Data Was Posted.< /font >
" & vbCrLf)
Response.End
End If
%>