我在使用asp脚本从数据库中获取数据时遇到问题,运行下面的代码后我只是有一个空白页面。有人可以帮忙吗?
<% Response.Buffer = True %>
<% Response.Expires = 0%>
<!--#include file="dsn.inc"-->
<html>
<head>
<meta http-equiv="Content-Language" content="en-us">
<meta http-equiv="Content-Type" content="text/html; charset=windows-1252">
<meta name="GENERATOR" content="Microsoft FrontPage 6.0">
<meta name="ProgId" content="FrontPage.Editor.Document">
<title>Search Results</title>
</head>
<body>
<font face="Arial Narrow">
<%
Set rst = Server.CreateObject("ADODB.Recordset")
If LCase(Request("clearsql")) = "y" Then
strSQL = "SELECT * from npic.dbo.LMSWeb"
Session("sql") = strSQL
Else
strSQL = Session("sql")
End If
rst.Open strSQL, strDSN
%>
<table border="1" width="100%">
<tr>
<td align="center" width="212"><font face="Arial Narrow"><b>Agent Name </b>
</font></td>
<td align="center" width="140"><b><font face="Arial Narrow">Sup</font></b><font
face="Arial Narrow"><b> Name </b>
</font></td>
<td align="center"><font face="Arial Narrow"><b>Date</b></font></td>
<td align="center"><font face="Arial Narrow"><b>Points</b></font></td>
<td align="center"> </td>
</tr>
<%
Dim strError
Do While Not rst.EOF
Response.Write "<tr>" & Chr(10)
Response.Write " <td>" & rst("agent name") & "</td>" & Chr(10)
Response.Write " <td>" & rst("sup") & "</td>" & Chr(10)
Response.Write " <td>" & rst("date") & "</td>" & Chr(10)
Response.Write " <td>" & rst("points") & "</td>" & Chr(10)
Response.Write "</tr>" & Chr(10)
rst.MoveNext
loop
rst.Close
Set rst=Nothing
%>
</table>
</center></div>
</body>
</html>
我在使用asp脚本从数据库中获取数据时遇到问题,运行上面的代码后,我只是有一个空白页面。有人可以帮忙吗?
答案 0 :(得分:1)
从经典ASP开始已经有一段时间了,但我认为这样可行:
<% Response.Buffer = True %>
<% Response.Expires = 0 %>
<!--#include file="dsn.inc"-->
<html>
<head>
<meta http-equiv="Content-Language" content="en-us">
<meta http-equiv="Content-Type" content="text/html; charset=windows-1252">
<meta name="GENERATOR" content="Microsoft FrontPage 6.0">
<meta name="ProgId" content="FrontPage.Editor.Document">
<title>Search Results</title>
</head>
<body>
<font face="Arial Narrow">
<%
Dim conn
Set rst = Server.CreateObject("ADODB.Recordset")
Set conn = Server.CreateObject("ADODB.Connection")
conn.Open yourConnectionStringHere
If LCase(Request("clearsql")) = "y" Then
strSQL = "SELECT * npic.dbo.LMSWeb"
Session("sql") = strSQL
Else
strSQL = Session("sql")
End If
Set rst = conn.Execute(strSQL) 'Typo was on this line
%>
<table border="1" width="100%" style="font-family: Arial Narrow;">
<thead>
<tr>
<th width="212">Agent Name</th>
<th width="140">Sup Name</th>
<th>Date</th>
<th>Points</th>
<th> </th>
</tr>
<thead>
<tbody>
<%
Dim strError
If rst.BOF And rst.EOF Then
' No data
Else
Do While (Not rst.EOF)
Response.Write "<tr>" & Chr(10)
Response.Write " <td>" & rst(0) & " " & rst(1) & "</td>" & vbCrLf
Response.Write " <td>" & rst(2) & "</td>" & vbCrLf
Response.Write " <td>" & rst(3) & "</td>" & vbCrLf
Response.Write " <td>" & rst(4) & "</td>" & vbCrLf
Response.Write "</tr>" & vbCrLf
rst.MoveNext
Loop
End If
rst.Close
conn.close
Set conn = Nothing
Set rst = Nothing
%>
</tbody>
</table>
</body>
</html>
我冒昧地将HTML更新为稍微更现代的语法,因为当{4}点击场景时<font>
标签超出了style
(双关语),你明确想要的是一个表头部分。
答案 1 :(得分:0)
我注意到在初始化之前你没有声明你的rst和strSQL变量(例如Dim rst,strSQL
)。我在下面添加了它们。
<% Response.Buffer = True %>
<% Response.Expires = 0%>
<!--#include file="dsn.inc"-->
<html>
<head>
<meta http-equiv="Content-Language" content="en-us">
<meta http-equiv="Content-Type" content="text/html; charset=windows-1252">
<meta name="GENERATOR" content="Microsoft FrontPage 6.0">
<meta name="ProgId" content="FrontPage.Editor.Document">
<title>Search Results</title>
</head>
<body>
<font face="Arial Narrow">
<%
Dim rst, strSQL
Set rst = Server.CreateObject("ADODB.Recordset")
If LCase(Request("clearsql")) = "y" Then
strSQL = "SELECT * from npic.dbo.LMSWeb"
Session("sql") = strSQL
Else
strSQL = Session("sql")
End If
rst.Open strSQL, strDSN
%>
<table border="1" width="100%">
<tr>
<td align="center" width="212"><font face="Arial Narrow"><b>Agent Name </b>
</font></td>
<td align="center" width="140"><b><font face="Arial Narrow">Sup</font></b><font
face="Arial Narrow"><b> Name </b>
</font></td>
<td align="center"><font face="Arial Narrow"><b>Date</b></font></td>
<td align="center"><font face="Arial Narrow"><b>Points</b></font></td>
<td align="center"> </td>
</tr>
<%
Dim strError
Do While Not rst.EOF
Response.Write "<tr>" & Chr(10)
Response.Write " <td>" & rst("agent name") & "</td>" & Chr(10)
Response.Write " <td>" & rst("sup") & "</td>" & Chr(10)
Response.Write " <td>" & rst("date") & "</td>" & Chr(10)
Response.Write " <td>" & rst("points") & "</td>" & Chr(10)
Response.Write "</tr>" & Chr(10)
rst.MoveNext
loop
rst.Close
Set rst=Nothing
%>
</table>
</center></div>
</body>
</html>