关于asp do while 调用数据库循环的问题

来源:百度知道 编辑:UC知道 时间:2024/06/16 21:34:36
<%rs.source="select * from youqing"
rs.cursortype=1
rs.open
if not rs.bof and not rs.eof then
do while not rs.eof
%>
<tr><td height="30" width="11%">
<a href="<%=rs("wangzhi")%>"><%=rs("wenzi")%></a></td>
</tr>
<%
rs.movenext
loop
%>
<%else%>
<tr><td>暂时没有友情链接</td></tr>
<%end if%>

我想做网页的友情链接,从数据库中输出记录,比方说,一行表格显示5条记录,如果记录多于5条,就再加一行表格,但是在一行内循环单元格我会(如上),如果再加上行循环,就不会了。

我的意思就是让数据库中的记录按顺序输出到多行多列的表格中,大家有什么办法给解决下。我说的可能不清楚,麻烦大家了,解决加30分。

<table>
<tr>
<%
dim counter
counter = 1
while not rs.eof%>
<td><%=xxxxx%></td>
<%if counter mod 5 = 0%></tr><tr><%end if%>
<%
counter = counter + 1
rs.movenext
loop%>
</tr>
</table>

写个大概,应该不难理解

简单的逻辑是这样的。

<%
response.write("<tr>")
i=0;
do while not rs.eof

if i mod 5 =0 then ‘五个TD换一行

response.write("</tr><tr>")
end if
response.write("<td>xxxxxxx</td>")
i++

rs.movenext
loop
response.write("</tr>")

%>

这样做有个弊端就是多输出一个<tr></tr> 但是也不影响你的页面效果。

如果你用<ul><li>页面元素 用CSS来控制 <li>的宽度 和 浮动,很容易解决。li{width:100px; float:left;}