基于ASP的站点和表单的错误处理

时间:2011-02-21 09:11:11

标签: asp-classic vbscript error-handling

我正在开发基于asp的(不是.net)网站,该网站大约有400多页......现在,整个网站都存在ASP和VBScript错误,例如:

Microsoft VBScript运行时错误'800a000d'

类型不匹配:'Cdate'

/MySite/page.asp,第71行

(当我将字符输入'date'字段时发生了上述情况。在这种情况下我知道它的VBScript,但是我得到了很多。)

现在,我知道我可以通过客户端验证(例如jQuery)来避免这种情况,但是当这样的事情发生时,我如何编写默认的“错误”页面?您点击了错误,而不是向您展示上述内容,您会被重定向到通用的“错误”页面?

我查了一些,发现ASP'On Error Resume Next'的事情,但我没有找到任何可行的例子。每个都是针对特定错误(例如将5除以0)定制的,我真的不想编写类似400+的潜在错误消息。

3 个答案:

答案 0 :(得分:0)

您可以在页面顶部添加以下代码。

    <% on error resume next%>

.
..
....

(其他代码在上面而不是点(。))

然后添加

<% if err then
response.redirect("err.page?code="&err.code)
end if%>

您可以根据错误编号在通用错误页面中定义错误消息。

答案 1 :(得分:0)

您可以通过IIS创建自定义错误页面。我不确定你正在运行什么版本等等 - 但这应该给你一个很好的跳跃点。 http://support.microsoft.com/kb/224070

答案 2 :(得分:0)

如果你向客户方提出同样的问题。您可以尝试捕获代码块以寻找可能抛出的代码时钟。

对于考试

<script language="text/javascript">
try
  {
//Code that will can throw error is here. 
  }
catch(err)
  {
 document.href.location="genericerrorpage.asp?err=" + err.code;


  }
}

</script>