用户注册 | 用户登陆 | 客户支持 | 交费方式 | 联系我们
客服电话:0579-8390-2939       客服QQ:25958356     
  首页 | 网站建设 | 特价优惠 | 域名注册 | 虚拟主机 | 海外主机 | 企业邮局 | 服务器 | 400电话 | 代理加盟  

滥用on error resume next造成的空间被停用

发布时间:2008-11-18 16:35:18   浏览人数: 347976 次  

on error resume next 这条语句是用来屏蔽出错信息,当出错时,使得程序继续执行的,不过在使用中,似乎很多人没有考虑到on error resume next的作用范围.比如

<%

On Error Resume Next

     Set Conn
=Server.CreateObject("ADODB.Connection"
)

    
Conn.Open "Provider=Microsoft.Jet.OLEDB.4.0;Data Source="&Server.MapPath("db.mdb"
)

     If
Err.Number<>0 Then Response.Write "数据库连接发生错误" : Response.
End

    


Set Rs
=conn.execute("Select * from 表"
)

Do While
Not rs.
eof

     response
.write rs(0
)

rs.
movenext

loop


%>

类似上面的代码,如果错误是发生在建立数据连接的时候,那么程序会按照我们设想的那样停止执行,给出出错信息,但假如是在set rs=conn.execute("select * from 表")这里出错呢?这个时候on error resume next仍然在起作用,这时候,一个占用cpu 100%的死循环就出现了,结果呢,如果服务器设置的好,那顶多你自己的站点无法访问了,如果服务器设置不够严格,那整个服务器的站点都要遭殃,结果就是空间商停掉你的空间.

代码改造一下

<%


Dim conn

Sub connect

On Error Resume Next

     Set Conn
=Server.CreateObject("ADODB.Connection"
)

    
Conn.Open "Provider=Microsoft.Jet.OLEDB.4.0;Data Source="&Server.MapPath("db.mdb"
)

     If
Err.Number<>0 Then Response.Write "数据库连接发生错误" : Response.
End

End sub    


connect


Set Rs
=conn.execute("Select * from 表"
)

Do While
Not rs.
eof

     response
.write rs(0
)

rs.
movenext

loop


%>

这样on error resume next就只作用于connect这个过程了,后面程序出错,不会因为on error resume next而带来死循环.

另外,on error resume next会屏蔽掉出错信息,在写程序的时候,尤其是初学者写程序的时候,很有可能因为这条语句的使用,使你忽略掉程序里隐藏的一些小错误.所以一定要慎用.

 
由于死循环造成服务器cpu100%,我们将暂停空间web服务,待修复问题后才可重新开通



上一篇:关于 SQL Server 没有 dbo 权限的问题
下一篇:空间不够用,能否升级,如何升级?

优秀客户链接:  广州中国旅行社 天马旅行社 广州大粤旅行社 萌娜服饰 库存尾货网 金华烘干 义乌村哥五谷坊 东平商城 翔安电动车 创世纪网盟 绍兴冷库 宅家买商城 法卡迪衣柜

   增值电信业务经营许可证:浙ICP备14017679号
  关于我们  |  联系我们  |  汇款方式  |  网站地图  |  常见问题  |  自助建站  |  诚聘英才  |  代理加盟  
   易天网络为您提供:自助建站 智能建站 免费建站 网站建设 建站宝盒 美国主机 免费域名注册 域名申请 域名查询
全国24小时免费服务热线:400-001-3105    地址:浙江省义乌市北苑街道春晗二区53幢4楼 

cdn加速服务 备案系统认证   举报不良网站 我们的支付方式 AAA级信用 

浙江易天网络科技有限公司 © 2005-—2015 版权所有 本站程序界面、源代码受相关法律保护,未经授权,严禁使用   51.la 专业、免费、强健的访问统计

以下js为测试信息