ASP中检查没有数据提交的页面

王朝asp·作者佚名  2006-11-24
宽屏版  字体: |||超大  

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

%>

 
 
 
免责声明:本文为网络用户发布,其观点仅代表作者个人观点,与本站无关,本站仅提供信息存储服务。文中陈述内容未经本站证实,其真实性、完整性、及时性本站不作任何保证或承诺,请读者仅作参考,并请自行核实相关内容。
© 2005- 王朝网络 版权所有