我需要帮助当连接到经典asp中的数据库时,我得到一个持续的空白页面。 为了安全起见,我更改了一些连接字符串。我知道这个字符串有效,因为我可以在vb.net中连接它。
<%@LANGUAGE="VBSCRIPT" CODEPAGE="65001"%>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>Search Test</title>
</head>
<body>
<%
Set Conn = Server.CreateObject("ADODB.Connection")
Conn.Open "Data Source=ServerIP;Initial Catalog=Database;User ID=Username;Password=Password"
strSql = "SELECT * FROM categories Where idParentcategory=1 ORDER BY categorydesc ASC"
Set rs = Conn.Execute(strSql)
If rs.eof Then
Response.write("No records returned")
End If
do until rs.eof
Response.write(rs("categorydesc") & "<br>")
rs.movenext
loop
Conn.Close
Set Conn = Nothing
%>
</body>
</html>
答案 0 :(得分:1)
如果它显示空白页面,您是否有可能看不到on error resume next
(可能是在包含文件中)?
我会通过检查eof
来处理这个问题,然后只在> 的情况下循环遍历结果集。
Set rs = Conn.Execute(strSql)
If rs.eof Then
Response.write("No records returned")
Else
do until rs.eof
Response.write(rs("categorydesc") & "<br>")
rs.movenext
loop
End If
rs.Close : set rs = nothing
Conn.Close : set Conn = Nothing
这与@ 03Usr的答案没有什么不同,除了:
答案 1 :(得分:0)
试试这个:
If not rs.eof then
Do while not rs.eof or rs.bof
Response.write(rs("categorydesc") & "<br>")
rs.movenext
Loop
Else
Response.Write "No records found"
End If