隐藏错误
程序中有错误总是不好的。但是,站点上的程序错误尤其不好,在那里有成千上万个人可以直接看到你的程序错误。不论你有多么细心,你的脚本都会有错误。在这一节里,你将学会如何隐藏它们。
考虑如下的脚本:
<%
mystring=”Once upon a time”
mystring=UPPERCASE(mystring)
%>
<%=mystring%>
这段脚本有一个错误。问题出在不存在函数UPPERCASE()。有一个UCASE()函数,但没有UPPERCASE()函数。如果你试图执行这段脚本,就会产生错误。这个错误会出现在网页中,全世界都可以看到。
现在,考虑如下的脚本:
<%
ON ERROR RESUME NEXT
mystring=”Once upon a time”
mystring=UPPERCASE(mystring)
%>
<%=mystring%>
除了语句ON ERROR RESUME NEXT外,这段脚本与上一个完全相同。如果你执行这段脚本,将不会有错误报告。ON ERROR RESUME NEXT语句强制脚本在遇到错误时继续执行下一条语句。
当然,这个语句不做任何修改错误的工作。字符串mystring仍然是小写。函数UPPERCASE()简单地被忽略。
如果你需要检测一个脚本内是否出现了错误,你可以加入如下的代码:
<%
ON ERROR RESUME NEXT
mystring=”Once upon a time”
mystring=”UPPERCASE(mystring)
IF ERR.NUMBER>0 THEN
%>
<%=ERR.NUMBER%>
<%
ERR.CLEAR
END IF
%>
<%=mystring%>
每当发生错误时,ERR对象中记录了错误号。如果ERR.NUMBER大于0,你就知道已发生了错误。
一旦发生了错误,你应该用ERR.CLEAR语句清除它。你需要清除错误,这样当一个新错误发生时,你才能记录它。每当ON ERROR RESUME NEXT语句被再次执行时,错误会自动被清除。每当退出一个过程或子例程时,错误也被自动清除。
总结
这一章综合地讲述了VBscript。你学习了如何使用VBscript的变量,运算符,数值函数,和字符函数。你还学习了如何使用分支和循环,如何建立自己的函数和过程。最后,你学习了如何使用随机数和如何处理错误。
学习完本章之后,你应该准备在你的ASP网页中使用VBscript了。在本书的下一部分,你将学习如何用VBscript来访问Active Sever Pages的对象和组件。这些知识使你可以建立真正的交互式站点。