您的位置 → 首頁 → 建站百科
相關(guān)文章
- Dreamweaver中10個經(jīng)典問答收集
- 服務(wù)器的w3wp.exe進程占用cpu100%的完美解決方案
- 在用Dreamweaver保存文件時發(fā)生共享違例怎么解
- css中用一張背景圖做頁面的技術(shù)有什么優(yōu)勢
- 如何設(shè)計一個出色的網(wǎng)站?
- 使用智能建站有哪些要求?
- 智能建站與主機空間的區(qū)別?
- 中小企業(yè)建網(wǎng)站的必要性,為什要建網(wǎng)
- 企業(yè)網(wǎng)站為什么要進行網(wǎng)絡(luò)推廣?
- 豐富的原創(chuàng)內(nèi)容是網(wǎng)站建設(shè)與網(wǎng)站優(yōu)化
- 英文網(wǎng)站建設(shè)常見問題及解決方案
- 提高流量和的鏈接數(shù)53種最好的辦法
- 一次有趣的ASP程序調(diào)試過程
- CSS+DIV設(shè)計網(wǎng)頁時的一些常用規(guī)范
- 讓網(wǎng)頁適應(yīng)不同分辨率
- 網(wǎng)頁設(shè)計的整體布局理念
- FLASH遮住菜單的解決方法
- 如何提高alexa排名-提高alexa排名全攻
- 什么是“沙盒期”以及該如何避免“沙
- 電子商務(wù)如何更好提高銷量
- 單頁面網(wǎng)站的優(yōu)化技巧
- 網(wǎng)絡(luò)創(chuàng)業(yè)者們看過來 網(wǎng)站的盈利方式
- 網(wǎng)站有的地方打不開的幾種原因
- 談如何做好一個WEB2.0站點
一次有趣的ASP程序調(diào)試過程
作者:客服中心 文章來源:天潤智力 點擊數(shù):136580 更新時間:2010-7-20
引用內(nèi)容
Microsoft VBScript 編譯器錯誤 錯誤 '800a03f6'
缺少 'End'
/iisHelp/common/500-100.asp,行242
Microsoft VBScript 運行時錯誤 錯誤 '800a000d'
類型不匹配
/sfbbs/inc/Dv_ClsMain.asp,行710
碰到這樣的錯誤提示我們應(yīng)該高興,因為它明確的指出了錯誤的地方,一般情況下只要檢查下所在行的代碼即可,但這次錯誤比較特別,710行處在一個函數(shù)體中,函數(shù)肯定是沒有問題的,那么問題應(yīng)該出在調(diào)用函數(shù)的地方,可是頁面中有好幾處調(diào)用了這個函數(shù)(難點一:確定出錯位置);還有,這個函數(shù)主要的是一個循環(huán)體,我們還得判斷出是在哪次循環(huán)時出的錯(難點二)。OK,我們先來看下這個函數(shù):
程序代碼
Public Function RecordsetToxml(Recordset,row,xmlroot)
Dim i,node,rs,j,DataArray
If xmlroot="" Then xmlroot="xml"
If row="" Then row="row"
Set RecordsetToxml=Server.CreateObject("msxml2.FreeThreadedDOMDocument"& MsxmlVersion)
RecordsetToxml.appendChild(RecordsetToxml.createElement(xmlroot))
If Not Recordset.EOF Then
DataArray=Recordset.GetRows(-1)
For i=0 To UBound(DataArray,2)
Set Node=RecordsetToxml.createNode(1,row,"")
j=0
For Each rs in Recordset.Fields
node.attributes.setNamedItem(RecordsetToxml.createNode(2,LCase(rs.name),"")).text= DataArray(j,i)& "" '710行
j=j+1
Next
RecordsetToxml.documentElement.appendChild(Node)
Next
End If
DataArray=Null
End Function
這個函數(shù)的功能還是比較簡單的,主要就是建立一個FreeThreadedDOMDocument對象,其根節(jié)點是xmlroot,下邊只有一個子節(jié)點row,然后將Recordset對象中的各字段及其值以屬性的方式保存在row節(jié)點中。
好了,現(xiàn)在我們先來解決第一個難點:找出錯誤位置!修改RecordsetToxml函數(shù)如下:
程序代碼
Public Function RecordsetToxml(Recordset,row,xmlroot)
Dim i,node,rs,j,DataArray
If xmlroot="" Then xmlroot="xml"
If row="" Then row="row"
Set RecordsetToxml=Server.CreateObject("msxml2.FreeThreadedDOMDocument"& MsxmlVersion)
RecordsetToxml.appendChild(RecordsetToxml.createElement(xmlroot))
If Not Recordset.EOF Then
DataArray=Recordset.GetRows(-1)
For i=0 To UBound(DataArray,2)
Set Node=RecordsetToxml.createNode(1,row,"")
j=0
For Each rs in Recordset.Fields
Response.Write(row & " " & xmlroot & " " & rs.name & "<br/>")
node.attributes.setNamedItem(RecordsetToxml.createNode(2,LCase(rs.name),"")).text= DataArray(j,i)& "" '710
j=j+1
Next
RecordsetToxml.documentElement.appendChild(Node)
Next
End If
DataArray=Null
End Function
注意Response.write語句放置的位置也很重要!瀏覽,返回結(jié)果為:
引用內(nèi)容
style xml ID
style xml StyleName
style xml Main_Style
style xml Style_Pic
style xml page_index
style xml page_dispbbs
style xml page_showerr
style xml page_login
style xml page_online
style xml page_usermanager
style xml page_fmanage
style xml page_boardstat
style xml page_paper_even_toplist
style xml page_query
style xml page_show
style xml page_dispuser
style xml page_help_permission
style xml page_postjob
style xml page_post
style xml page_boardhelp
style xml upsize_ts
Microsoft VBScript 編譯器錯誤 錯誤 '800a03f6'
缺少 'End'
/iisHelp/common/500-100.asp,行242
Microsoft VBScript 運行時錯誤 錯誤 '800a000d'
類型不匹配
/sfbbs/inc/Dv_ClsMain.asp,行711
可以初步判斷是類似RecordsetToxml(Recordset,"style","xml")的位置出錯,OK,我們搜索"style","xml",沒有結(jié)果:(,再搜索"style",搜索結(jié)果中只有一處參數(shù)中有帶"style"的,就是它了,發(fā)現(xiàn)也是位于一個函數(shù)中:
程序代碼
Public Sub Loadstyle()
Dim Rs
Set Rs=Dvbbs.Execute("Select * From Dv_style")
Set Application(CacheName &"_style")=RecordsetToxml(rs,"style","") '就是這句了
Set Rs=Nothing
LoadStyleMenu()
End Sub
這個函數(shù)的作用也挺簡單的,就是從Dv_style表中將論壇樣式讀取出來以XML格式保存到Application對象中,OK,結(jié)合上邊錯誤信息,我們可以猜到是在讀取upsize_ts字段時出錯了!才想起來這個字段動網(wǎng)本身是沒有的,是在Access2000轉(zhuǎn)Access2003時新增的,將其刪除,問題解決!