麻豆传媒视频在线,国产91精品不卡视频,欧美jizz19性欧美,污视频网站在线观看,91涩漫在线观看,伊人发布在线,九色porny丨首页在线,福利视频一区,久久av网址,久久人人视频

當前位置:首頁 > 網站舊欄目 > 學習園地 > 程序開發教程 > ASP錯誤處理

ASP錯誤處理
2010-01-17 10:40:09  作者:  來源:
簡單介紹
asp是很簡單的,以至于許多的研發者不會去思考錯誤處理。錯誤處理能夠讓您的應用程式更加合理。我看到過很多個用asp編寫的商業網站,大多數都忽略了錯誤處理。
錯誤的類型
有三種主要的錯誤類型:
編譯錯誤:
這種錯誤出現一般都是代碼的語法問題。因為編譯錯誤而導致辭asp停止運行。
運行錯誤
這個錯誤是發生在您準備運行asp時的。例如:假如您試圖給一個變量賦值,但是卻超出了該變量允許的范圍。
邏輯錯誤
邏輯錯誤是最難被發現的,這種錯誤經常是一種結構錯誤,電腦是發現不了的。這就需要我們徹頭徹尾地檢查我們的代碼。
因為編譯錯誤一般是和邏輯錯誤一起發生的,一般都能顯示出來,所以我們擔心的就只是運行錯誤。他都終止asp的運行,而且給用戶丟下一堆很不友好的文字
那么我們要怎樣處理運行錯誤呢!?我們先來看看,asp唯一提供給我們的錯誤命令---on error resume next(這里提醒一下初學者,在asp中只有on error resume next語句,沒有on error resume goto語句)
假如您不使用on error resume next語句的話,一切運行錯誤都會發生,這個是致命的,那么就會有一段錯誤代碼“展現”給用戶,而且asp程式也會停止。

下面就是個錯誤代碼:


microsoft ole db provider for odbc drivers error 80004005
[microsoft][odbc driver manager] data source name not found and no default driver specified
/test.asp, line 60


當我們在程式最上面使用on error resume next語句時,任何的錯誤都會被忽略,程式會自動執行下一條語句。這樣程式就會完全執行,出錯后用戶也不會看到出錯信息。但是這樣也有不好的地方,那就是假如程式沒有按照您想像的執行的話,您就很難找到到底是哪里出了問題,所以您就得在必要的地方對錯誤進行處理。
處理錯誤
在asp中,處理錯誤的最好的辦法就是在程式最底端放上代碼來處理錯誤。我也推薦在每個asp程式都使用緩沖區。這樣的話,假如錯誤發生,頁面就會停止,頁面內容也會被清除,這樣用戶就不會看到錯誤信息,對您們的抱怨也就少了!下面是個例子:
<%@ language="vbscript" %>
<% 配置buffer為true
response.buffer = true
開始錯誤處理
on error resume next
%>
<% 錯誤處理
if err.number <> 0 then
清除頁面
response.clear
顯示錯誤信息給用戶
%>
<html>
<head>
<title></title>
</head>
<body bgcolor="#c0c0c0">
<font face="arial">an error occurred in the execution of this asp page<br>
please report the following information to the support desk<p>
<b>page error object</b><br>
錯誤 number: <%= err.number %><br>
錯誤信息: <%= err.description %><br>
出錯文檔: <%= err.source %><br>
出錯行: <%= err.line %><br>
</font>
</body>
</html>

<%end if%>


您們上面看到了,我首先配置on error resume next ,這樣出現錯誤就不會影響程式的執行。

錯誤處理和數據庫
在錯誤處理中加入數據庫的執行是很復雜的。假若我們有一個程式,有很多的命令去向數據庫中添加記錄,假如insert/update在程式的最底部執行,假如我們前面又錯誤發生,那就完了!我們就會向數據庫中添加了一個錯誤的信息。因為我們用了on error resume next 一切的錯誤都被忽略了!即使前面出錯,程式依舊會向數據庫中添加數據的。
為避免這種情況,我們就先得做些手腳,正確處理的方法如下:

if err.number = 0 and objconnection.errors.count = 0 then

這里才能執行語句,因為沒有錯誤
set rstresults = dbdata.execute(txtsql)

end if



更多高級的處理辦法
當一個錯誤發生時,您們也能夠顯示更多的錯誤信息。下面是同時處理數據庫和頁面錯誤的例子,有了他我們一下就能發現我們程式中的任何錯誤。(由于有些地方我覺得英文更能說時問題,所以沒有翻譯)。
<%
if err.number <> 0 then
response.clear
select case err.number
case 8 指定錯誤的number
在這里處理自定義錯誤

case else 一般錯誤

if isobject(objconnection) then
if objconnection.errors.count > 0 then
%>

<b>database connection object</b>

<% for intloop = 0 to objconnection.errors.count - 1 %>

error no: <%= objconnection.errors(intloop).number %><br>
description: <%= objconnection.errors(intloop).description %><br>
source: <%= objconnection.errors(intloop).source %><br>
sqlstate: <%= objconnection.errors(intloop).sqlstate %><br>
nativeerror: <%= objconnection.errors(intloop).nativeerror %><p>

<% next
end if

end if
if err.number <> 0 then
%>

<b>page error object</b><br>
error number <%= err.number %><br>
error description <%= err.description %><br>
source <%= err.source %><br>
linenumber <%= err.line %><p>

<% end if
end select
end if
%>


上面的例子讓我們一下了處理了很多在數據庫中出現的問題,這個在我們日常編程也是常用的!我們也應該看到那個select case 語句,他能讓我們來處理特定的錯誤。
redirect 和錯誤處理
有一點我們就當注意一下,就是我們常用到的redirect對象,假如一個頁面中出現了redirect對象,那么錯誤處理就失去了意義。所以在轉向之前我們還得處理一下,如下:

if err.number = 0 and objconnection.errors.count = 0 then


response.clear
response.redirect ?lt;url here>?

end if



把代碼變得更整齊
為了讓代碼變得更整齊,首先把錯誤處理的文檔放在一個包含文檔中。這樣您就能夠在任何文檔中使用他。這樣修改也方便。
在您程式的最上方加入(當然在語言聲明之后)on error resume next語句。
在您執行sql以前進行錯誤檢查。
使用redirect以前也要進行錯誤處理。
讓您處理錯誤的包含文檔在代碼的最上面
安徽新華電腦學校專業職業規劃師為你提供更多幫助【在線咨詢
相關熱詞搜索:錯誤 處理
亚洲系列中文字幕| 91久久青草| 亚洲精品555| 日本高清网站| 91精品国产综合久久香蕉的用户体验| 日韩暖暖在线视频| 2020国产精品视频| 国产精品视频在线播放| 国产精品第10页| 成人精品久久久| 四虎永久在线| 日本www在线观看视频| 毛片av在线| 少妇视频一区| av成人在线观看| 51亚洲精品| 久久91麻豆精品一区| 精品国产1区| 亚洲精品极品| 成人小视频在线| 国产精品美女一区二区在线观看| 亚洲柠檬福利资源导航| 日韩欧美精品网站| 日韩美女在线视频| 最新69国产成人精品视频免费| 久久久久久69| 国产精品永久在线| 国产视频第一页在线观看| 精品精品导航| 超碰成人在线观看| 欧美韩国一区| 成人综合婷婷国产精品久久蜜臀| 亚洲欧洲日韩av| 色诱视频网站一区| 亚洲欧美中文另类| 欧美亚洲国产精品| 亚洲美女免费在线| 91精品国产成人观看| 老司机亚洲精品| 久久久久久久久99精品| 在线国产电影不卡| 中文字幕日韩综合av| 成人激情电影一区二区| 欧美被日视频| 成人av激情人伦小说| 欧美日韩伊人| 国产亚洲综合色| 色婷婷久久99综合精品jk白丝| 亚洲视频在线播放| 国产天堂在线观看| 丁香花在线影院| 天堂99x99es久久精品免费| 99精品国产一区二区青青牛奶 | 91综合在线| 国产高清亚洲一区| 日韩欧美a级成人黄色| 色系列之999| 国内福利写真片视频在线 | 樱花草国产18久久久久| 日韩欧美中文字幕制服| 久久久久亚洲精品| 三级视频在线播放| 精品一区二区三区在线观看视频| 韩国自拍一区| 中文一区在线播放 | 色综合久久中文字幕综合网| 久久精品夜夜夜夜夜久久| 瑜伽美女视频| 日本国产亚洲| 久久av一区二区三区| 亚洲一区二区三区四区在线观看| 中文字幕精品av| 亚洲第一se情网站| 国产 日韩 欧美 综合 一区| 韩日欧美一区二区三区| 欧美在线一区二区三区| 欧美一级大胆视频| gogo久久| 久久久久国产精品一区三寸| 欧美日韩亚洲高清| 97在线观看免费| 免费毛片在线看片免费丝瓜视频| 一区二区三区四区电影| 一区二区在线观看免费| 欧美成人免费一级人片100| 国产区在线观看| 性xxxx欧美老肥妇牲乱| 亚洲欧美日韩国产综合在线| 欧美成人三级视频网站| 婷婷色在线播放| 91精品国产麻豆国产在线观看| 国产精品不卡在线观看| 日韩在线播放av| 超碰在线caoporn| 亚洲乱码在线| 亚洲国产一二三| 97在线观看免费| 亚洲成av在线| 国产麻豆一精品一av一免费| 日韩精品一区二区三区中文精品| 国产三级av在线| 久久精品不卡| 无吗不卡中文字幕| 国产精品啪视频| 91九色鹿精品国产综合久久香蕉| 粉嫩蜜臀av国产精品网站| 亚洲国产91精品在线观看| 国产中文字幕在线看| 中文字幕一区二区三区乱码图片 | 综合天堂av久久久久久久| 亚洲理论在线观看| 日韩av理论片| 亚洲天堂中文字幕在线观看| 国产午夜久久久久| 性色av一区二区三区在线观看| 国产精品4hu.www| 99久久精品免费| 国产小视频国产精品| 超碰电影在线播放| 久久69国产一区二区蜜臀| 亚洲乱码av中文一区二区| 91福利区在线观看| 国产乱码字幕精品高清av| 中文字幕一区二区三区电影| 免费在线成人激情电影| 久久亚洲精品小早川怜子| 欧美激情亚洲自拍| 网站一区二区| 夜色激情一区二区| 国产成+人+亚洲+欧美+综合| 欧美三级特黄| 亚洲精品成a人在线观看| 美女航空一级毛片在线播放| 国产不卡在线播放| 久久久久久亚洲| 成人av综合网| 欧美性videos高清精品| 九色在线观看视频| 国产一区中文字幕| 欧美激情在线有限公司| 亲子伦视频一区二区三区| 福利一区福利二区微拍刺激| 一个人免费观看视频www在线播放| 国产情侣一区| 日韩中文字幕在线播放| 视频免费一区二区| 欧美色视频日本版| 你懂的视频在线| 国产精品亚洲一区二区三区在线| 久久久久国产精品www| 欧美色资源站| 欧美色网一区二区| 国内精品久久久久国产| 成人免费视频一区| 久久久999精品| 欧洲亚洲视频| 在线电影国产精品| 二区三区不卡| 亚洲午夜羞羞片| www久久日com| 国产精品午夜在线观看| 天堂a中文在线| 国产精品996| 国产男女爽爽爽| 久久 天天综合| 91精品久久久久久久久久| 亚洲中字在线| 青草青草久热精品视频在线网站| 一区二区三区午夜探花| 亚洲女同精品视频| 欧美有码在线| 亚洲精品一线二线三线无人区| 亚洲免费一区| 911精品产国品一二三产区| 成人av观看| 在线亚洲免费视频| 乱馆动漫1~6集在线观看| 亚洲成人动漫精品| heyzo高清在线| 欧美特级www| 日韩新的三级电影| 欧美三级日韩三级国产三级| 婷婷激情成人| 欧美一区二区精品| 国产精品成人自拍| 日韩高清免费观看| 日韩dvd碟片| 大胆欧美人体视频| 伊人激情综合| 琪琪第一精品导航| 久久99国产精品尤物| 国产国产国产国产国产国产| 国产69精品一区二区亚洲孕妇| 最大av网站| 国产午夜久久久久| 中文字幕在线播放网址| 精品久久久一区二区| 992tv国产精品成人影院| 日韩一区二区三区免费看 | 日韩欧美一区二区三区在线观看|