捕捉并存储ASP运行错误的函数代码
发布时间:2023-10-13 10:17:20 所属栏目:Asp教程 来源:
导读:过程名:catch(str)
使用方法:
复制代码 代码如下:
on error resume next
'你的代码,如数据库连接
call catch("显示给用户的提示信息")
功能:清除IIS的错误提示信息,自定义错误提示返回给用户,并将
使用方法:
复制代码 代码如下:
on error resume next
'你的代码,如数据库连接
call catch("显示给用户的提示信息")
功能:清除IIS的错误提示信息,自定义错误提示返回给用户,并将
|
过程名:catch(str) 使用方法: 复制代码 代码如下: on error resume next '你的代码,如数据库连接 call catch("显示给用户的提示信息") 功能:清除IIS的错误提示信息,自定义错误提示返回给用户,并将出错信息保存到txt文件 代码: 复制代码 代码如下: <% option explicit '例一--------------------------- '必须和on error resume next一起使用,但在网页没有正式发布之前最好将其注释掉,以免在调试时看不到出错详细信息 on error resume next 'i没有定义,会出错,使用catch清除错误并保存到记事本 i call catch("页面无法访问") '------------------------------- '例二--------------------------- function conn() '必须和on error resume next一起使用 on error resume next '...........你的连接数据库代码 call catch("数据库打开错误") end function '------------------------------- sub catch(str) if err.number <> 0 then dim tmp,path '错误日志绝对路径,如"/error_log.txt" path = "/table/error_log.txt" tmp = tmp & "出错页面:" & geturl & vbcrlf tmp = tmp & "错误时间:" & now() & vbcrlf tmp = tmp & "来访IP:" & ip & vbcrlf tmp = tmp & "提示信息:" & str & vbcrlf tmp = tmp & "错误代号:" & err.number & vbcrlf tmp = tmp & "错误信息:" & err.description & vbcrlf tmp = tmp & "应用程序:" & err.source & vbcrlf & vbcrlf & vbcrlf tmp = tmp & file_read(path) call file_save(tmp,path,1) err.clear() die(str) end if end sub '以下为catch所用到的函数-------------------- sub echo(str) response.write(str) end sub sub die(str) echo(str) : response.end() end sub function ip() ip = request.servervariables("remote_addr") end function '获取当前URL function geturl() dim tmp if lcase(request.servervariables("https")) = "off" then tmp = "http://" else tmp = "https://" end if tmp = tmp & request.servervariables("server_name") if request.servervariables("server_port") <> 80 then tmp = tmp & ":" & request.servervariables("server_port") end if tmp = tmp & request.servervariables("url") if trim(request.querystring) <> "" then tmp = tmp & "?" & trim(request.queryString) end if geturl = tmp end function '函数:读取文件内容到字符串 function file_read(path) dim tmp : tmp = "false" if not file_exists(path) then file_read = tmp : exit function dim stream : set stream = server.CreateObject("ADODB.Stream") with stream .type = 2 '文本类型 .mode = 3 '读写模式 .charset = "gb2312" .open .loadfromfile(server.MapPath(path)) tmp = .readtext() end with stream.close : set stream = nothing file_read = tmp end function (编辑:汽车网) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |
推荐文章
站长推荐
