国产精品一区二区精品_久久小视频_天堂va在线观看_99久久夜色精品国产亚洲96_日本手机在线视频_av成人免费

當前位置:首頁 > 網(wǎng)站舊欄目 > 學習園地 > 程序開發(fā)教程 > ASP錯誤處理

ASP錯誤處理
2010-01-17 10:40:09  作者:  來源:
簡單介紹
asp是很簡單的,以至于許多的研發(fā)者不會去思考錯誤處理。錯誤處理能夠讓您的應(yīng)用程式更加合理。我看到過很多個用asp編寫的商業(yè)網(wǎng)站,大多數(shù)都忽略了錯誤處理。
錯誤的類型
有三種主要的錯誤類型:
編譯錯誤:
這種錯誤出現(xiàn)一般都是代碼的語法問題。因為編譯錯誤而導致辭asp停止運行。
運行錯誤
這個錯誤是發(fā)生在您準備運行asp時的。例如:假如您試圖給一個變量賦值,但是卻超出了該變量允許的范圍。
邏輯錯誤
邏輯錯誤是最難被發(fā)現(xiàn)的,這種錯誤經(jīng)常是一種結(jié)構(gòu)錯誤,電腦是發(fā)現(xiàn)不了的。這就需要我們徹頭徹尾地檢查我們的代碼。
因為編譯錯誤一般是和邏輯錯誤一起發(fā)生的,一般都能顯示出來,所以我們擔心的就只是運行錯誤。他都終止asp的運行,而且給用戶丟下一堆很不友好的文字
那么我們要怎樣處理運行錯誤呢!?我們先來看看,asp唯一提供給我們的錯誤命令---on error resume next(這里提醒一下初學者,在asp中只有on error resume next語句,沒有on error resume goto語句)
假如您不使用on error resume next語句的話,一切運行錯誤都會發(fā)生,這個是致命的,那么就會有一段錯誤代碼“展現(xiàn)”給用戶,而且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語句時,任何的錯誤都會被忽略,程式會自動執(zhí)行下一條語句。這樣程式就會完全執(zhí)行,出錯后用戶也不會看到出錯信息。但是這樣也有不好的地方,那就是假如程式?jīng)]有按照您想像的執(zhí)行的話,您就很難找到到底是哪里出了問題,所以您就得在必要的地方對錯誤進行處理。
處理錯誤
在asp中,處理錯誤的最好的辦法就是在程式最底端放上代碼來處理錯誤。我也推薦在每個asp程式都使用緩沖區(qū)。這樣的話,假如錯誤發(fā)生,頁面就會停止,頁面內(nèi)容也會被清除,這樣用戶就不會看到錯誤信息,對您們的抱怨也就少了!下面是個例子:
<%@ 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 ,這樣出現(xiàn)錯誤就不會影響程式的執(zhí)行。

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

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

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

end if



更多高級的處理辦法
當一個錯誤發(fā)生時,您們也能夠顯示更多的錯誤信息。下面是同時處理數(shù)據(jù)庫和頁面錯誤的例子,有了他我們一下就能發(fā)現(xiàn)我們程式中的任何錯誤。(由于有些地方我覺得英文更能說時問題,所以沒有翻譯)。
<%
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
%>


上面的例子讓我們一下了處理了很多在數(shù)據(jù)庫中出現(xiàn)的問題,這個在我們?nèi)粘>幊桃彩浅S玫!我們也?yīng)該看到那個select case 語句,他能讓我們來處理特定的錯誤。
redirect 和錯誤處理
有一點我們就當注意一下,就是我們常用到的redirect對象,假如一個頁面中出現(xiàn)了redirect對象,那么錯誤處理就失去了意義。所以在轉(zhuǎn)向之前我們還得處理一下,如下:

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


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

end if



把代碼變得更整齊
為了讓代碼變得更整齊,首先把錯誤處理的文檔放在一個包含文檔中。這樣您就能夠在任何文檔中使用他。這樣修改也方便。
在您程式的最上方加入(當然在語言聲明之后)on error resume next語句。
在您執(zhí)行sql以前進行錯誤檢查。
使用redirect以前也要進行錯誤處理。
讓您處理錯誤的包含文檔在代碼的最上面
安徽新華電腦學校專業(yè)職業(yè)規(guī)劃師為你提供更多幫助【在線咨詢
国产精品一区二区精品_久久小视频_天堂va在线观看_99久久夜色精品国产亚洲96_日本手机在线视频_av成人免费
<button id="0mgmq"><pre id="0mgmq"></pre></button>
  • <tr id="0mgmq"></tr>
  • <abbr id="0mgmq"><source id="0mgmq"></source></abbr> <button id="0mgmq"></button>
  • 欧美日本韩国在线| 久99久在线| 欧美特黄一级| 日韩中文字幕一区| 国产精品久久久久久久久婷婷 | 日韩国产精品一区二区| 99久久久精品免费观看国产| 日韩视频在线播放 | 久久久久久欧美精品色一二三四| 国产精品人人爽人人做我的可爱| 国产自产精品| 欧美三级网页| 欧美午夜不卡| 欧美午夜久久| 亚洲成人自拍视频| 在线国产欧美| 一二三区精品| 亚洲一区精品视频| 鲁鲁狠狠狠7777一区二区| 国产偷自视频区视频一区二区| 欧美日韩专区| 在线播放豆国产99亚洲| 国产一区二区中文字幕免费看| 欧美激情一级片一区二区| 欧美黄色精品| 亚洲精品免费观看| 噜噜噜噜噜久久久久久91| 久久黄色网页| 精品久久久久久一区二区里番| 久久99精品久久久久久久久久| 欧美精品七区| 正在播放精油久久| 今天的高清视频免费播放成人| 99精品视频免费| 久久午夜精品一区二区| 国产欧美综合精品一区二区| 免费看成人午夜电影| 亚洲欧洲日韩精品| 在线观看的日韩av| 久久精品成人| 久久亚洲午夜电影| 午夜精品av| 国产毛片一区| 久久精品国产美女| 中文字幕不卡每日更新1区2区| 亚洲国产精品www| 久久精品卡一| 欧美不卡福利| 亚洲午夜在线观看| 国产成人精品自拍| 亚洲精品一区二| 国产精品视频福利| 久久久久久国产精品免费免费| 一区二区三区四区欧美日韩| 日韩一区二区免费看| 国产精品三区www17con| 亚洲啪啪av| 噜噜噜91成人网| 日本不卡一区| 亚洲欧美日本视频在线观看| 美女精品国产| 亚洲激情精品| 欧美日韩精品一区| 亚洲免费高清| 久久精品日产第一区二区三区乱码 | 欧美精品欧美精品系列c| 国一区二区在线观看| 国产精品10p综合二区| 欧美日本韩国在线| 国产高清一区视频| 亚洲婷婷在线| 欧美三级网色| 老司机一区二区三区| 亚洲精品中字| 国产伦精品一区二区三区免费视频| 中文一区一区三区免费| 国产精品二区在线| 欧美日韩免费精品| 麻豆91av| 久久亚洲免费| 亚洲精品自在在线观看| 神马一区二区影院| 国产伦理一区二区三区| 亚洲经典在线看| 亚洲精品成人a8198a| 国产精品久久久久久久久久直播 | 日本不卡久久| 国产精品入口免费| 国产欧美综合一区二区三区| 亚洲精品美女久久7777777| 波多野结衣久草一区| 在线视频精品| 在线观看亚洲| 你懂的成人av| 天天爽天天狠久久久| 激情五月综合色婷婷一区二区| 国产精品毛片在线| 在线观看视频免费一区二区三区| 色噜噜色狠狠狠狠狠综合色一| 成人h视频在线观看| 亚洲一区二区在| 国产日韩一区欧美| 狠狠入ady亚洲精品| 欧美 日韩 国产一区二区在线视频| 鲁鲁狠狠狠7777一区二区| 国产精品一区在线播放| av成人综合网| 91亚洲精品丁香在线观看| 午夜亚洲精品| 久久久国产精品一区二区中文| 国产午夜精品一区二区三区欧美 | 一区久久精品| 国产精品激情| 狠狠色综合一区二区| 欧美午夜在线| 亚洲图色在线| 亚洲激情成人| 一本久久知道综合久久| 亚洲一级一区| 一区二区欧美日韩| 国产欧美一级| 51国偷自产一区二区三区的来源 | 久久久久久久久久久一区 | 成人欧美视频在线| 国产精品18毛片一区二区| 久久久久看片| 国产精品sss| 久久青青草原一区二区| 日韩欧美激情一区二区| 少妇精品久久久久久久久久| 婷婷久久五月天| 国产在线观看一区| 在线一区免费观看| 91九色露脸| 欧美日韩精品久久| 欧美一区二区视频在线 | 国产91精品入口17c| 欧美久久久久久| 欧美日韩一区二区三区在线观看免| 伊人久久av导航| 久久精品二区| 免费成人深夜夜行视频| 欧美一区激情| 亚洲一区三区视频在线观看| 成人av蜜桃| 香蕉久久夜色| 在线一区视频| 免费精品视频一区二区三区| 一本色道久久99精品综合| 亚洲美女一区| 精品国产一区二区三区麻豆小说| 手机看片福利永久国产日韩| 国语对白精品一区二区| av观看久久| 中文字幕在线亚洲精品| 久久动漫亚洲| 手机成人在线| 裸体一区二区| 亚洲图片在线观看| 久久精品综合| 中文字幕成人一区| 久热精品在线| 欧美性天天影院| 国内精品视频免费| 亚洲三级影院| 日本一区二区三区四区在线观看 | 动漫美女被爆操久久久| 一区二区三区四区视频在线观看 | 国产精品美女黄网| 国产伊人精品| 欧美精品七区| 香蕉久久夜色| 欧美另类亚洲| 久久精品国产精品青草色艺| 91久久亚洲| 午夜精品一区二区三区在线观看| 国产九九精品| 欧美精品日本| 欧美主播一区二区三区美女 久久精品人 | 欧美一区在线看| 国产精品美女久久久久av福利| 欧美日韩综合网| 欧美裸体网站| 97人人模人人爽视频一区二区| 一区二区视频在线观看| 国产在线精品一区二区三区》| 亚洲国产欧美日韩| 日韩精品电影网站| 99se婷婷在线视频观看| 亚洲激情另类| 欧美日韩亚洲一区二区三区在线| 国产视色精品亚洲一区二区| 亚洲一区二区精品在线观看| 欧美成人日韩| 亚洲欧美日本国产有色| 免费影院在线观看一区| 国产91一区二区三区| 久久国产主播精品| 国产日韩高清一区二区三区在线| 欧美激情aⅴ一区二区三区|