首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 网站开发 > ASP >

如何样循环输出这样的代码

2012-02-14 
怎么样循环输出这样的代码?在页面中有三个这样的表格,显示6条记录,要求,循环读取数据库,然后将数据库的数

怎么样循环输出这样的代码?
在页面中有三个这样的表格,显示6条记录,要求,循环读取数据库,然后将数据库的数据填入表格,要求没有记录时,表格也要显示出来,不过所有的数据全为默认值,请问怎么写循环呢?
                                            <table   width= "100% "   border= "1 "   cellspacing= "1 "   cellpadding= "1 ">
                                                <tr>
                                                    <td   align= "center "   valign= "middle "> <img   src= "../imgs/IMG_0052_1.gif "   alt= " "   "
                                width= "120 "   height= "120 "   /> </td>
                                                    <td> <ul     style= "text-align:left; ">
                                                            <li> 姓名: <a   href= "index_member.html "> 张三那 </a> </li>
                                                            <li> 性别:男 </li>
                                                            <li> 学历:大专 </li>
                                                            <li> 籍贯:江苏 </li>
                                                        </ul> </td>
                                                    <td   align= "center "> <img   src= "../imgs/Picture.jpg "   alt= " "   width= "120 "   "
                                height= "160 "   /> </td>
                                                    <td   colspan= "2 "> <ul     style= "text-align:left; ">
                                                            <li> 姓名: <a   href= "index_member.html "> 张三那 </a> </li>


                                                            <li> 性别:男 </li>
                                                            <li> 学历:大专 </li>
                                                            <li> 籍贯:江苏 </li>
                                                        </ul> </td>
                                                </tr>
                                            </table>

我是这样写的,但是不对,不能正确循环
        Set   rs   =   Server.CreateObject( "ADODB.Recordset ")
        rs.Open   sql,   conn,   1,   1
        For   a   =   0   To   topNum   -1
                If   rs.EOF   And   rs.bof   Then
                        If   a   Mod   2   =   0   Then
                                Response.Write   "             <table   width= " "100% " "   border= " "1 " "   cellspacing= " "1 " "   cellpadding= " "1 " "> "
                                Response.Write   "                 <tr> "
                                Response.Write   "                     <td   align= " "center " "   valign= " "middle " "> <img   src= " "../imgs/IMG_0052_1.gif " "   alt= " " " "   "
                                Response.Write   "width= " "120 " "   height= " "120 " "   /> </td> "
                                Response.Write   "                     <td> <ul     style= " "text-align:left; " "> "
                                Response.Write   "                             <li> 姓名: <a   href= " "index_member.html " "> 张三那 </a> </li> "


                                Response.Write   "                             <li> 性别:男 </li> "
                                Response.Write   "                             <li> 学历:大专 </li> "
                                Response.Write   "                             <li> 籍贯:江苏 </li> "
                                Response.Write   "                         </ul> </td> "
                                Response.Write   "                     <td   align= " "center " "> <img   src= " "../imgs/Picture.jpg " "   alt= " " " "   width= " "120 " "   "
                                Response.Write   "height= " "160 " "   /> </td> "
                                Response.Write   "                     <td   colspan= " "2 " "> <ul     style= " "text-align:left; " "> "
                                Response.Write   "                             <li> 姓名: <a   href= " "index_member.html " "> 张三那 </a> </li> "
                                Response.Write   "                             <li> 性别:男 </li> "
                                Response.Write   "                             <li> 学历:大专 </li> "
                                Response.Write   "                             <li> 籍贯:江苏 </li> "
                                Response.Write   "                         </ul> </td> "
                                Response.Write   "                 </tr> "


                                Response.Write   "             </table> "
                        End   If
                Else
                        b   =   0
                        Do   While   Not   rs.EOF
                                If   a   Mod   2   =   0   Then
                                        Response.Write   "             <table   width= " "100% " "   border= " "1 " "   cellspacing= " "1 " "   cellpadding= " "1 " "> "
                                        Response.Write   " <tr> <td   align= " "center " "   valign= " "middle " "> <img   src= " "../upimages/perpic/ "&rs( "picture_filename ")& " " "   alt= " " " "   style= " "border:0;   width:120px;   height:120px; " "   > "
                                                Response.Write   " </td> "
                                                Response.Write   "                     <td> <ul     style= " "text-align:left; " "> "
                                                Response.Write   "                             <li> 姓名: "&   rs( "pmember_name ")& " </li> "
                                                Response.Write   "                             <li> 性别: "
                .................
                                                Response.Write   "                             </li> <li> 学历: "
    ......................
                                                Response.Write   "                             </li> <li> 籍贯: "


                                                Response.Write   "                         </li> </ul> </td> "
                                        If   b   =   1   Then
                                                Response.Write   "                 </tr> "
                                                Response.Write   "             </table> "
                                        End   If
                                        b   =   b   +   1
                                        If   b   =   2   Then   b   =   0
                                End   If
                                rs.movenext

                        Loop
                End   If
        Next
        rs.Close
        Set   rs   =   Nothing

[解决办法]
suppose topNum为存储数据的数组的size,显示每行2条数据
....
<table>
<tr>
<%
for i=0 to tomNum-1
if i mod 2=0 and i <> topNum-1 and i> 0 then
response.write " </tr> <tr> "
end if
if not rs.eof then
%>
<td> <img src= " <?=ArrayInfo(i).photo?> .gif " /> </td> //一村照
<td>
<ul>
<li> 编号: <?=ArrayInfo(i).id ?> </li>
<li> 姓名: <?=ArrayInfo(i).name ?> </li>
</ul>
</td>
<%
else
%>
<td> <img src= "img.gif " /> </td> //一村照
<td>
<ul>
<li> 编号: </li>
<li> 姓名: </li>
</ul>
</td>
<% end if
next
%>
</tr>
</table>

[解决办法]
if rs.eof and rs.bof then
else
while not rs.eof

for I1=1 to “这里应该是一行显示数据的条数 "
response.write "有数据 "
rs.movenext
if rs.eof then exit for
next
if I1 < "这里应该是一行显示数据的条数 " then
for I2=I1 to “这里应该是一行显示数据的条数” ‘呵,不好意思
response.write "默认 "


next
end if

wend
end if
这行应该差不多了吧。。。。
[解决办法]
那不是一样吗
换为
for i=0 to topNum-1 step 2
%>
<table>
<tr>
<td> <img ....> </td>
<td> <ul> <li> <?=data(i).id?> </li> </ul> </td>
<td> <img ....> </td>
<td> <ul> <li> <?=data(i+1).name?> </li> </ul> </td>
</tr>
</table>
<%next %>
如果用记录集的话中间加个rs.moveNext
也就是一个循环中有移动两次游标

热点排行