注册 登录
编程论坛 ASP技术论坛

高手帮忙,ASP问题!

hinone 发布于 2010-08-09 11:57, 847 次点击
我要在一行显示4个文章标题,数据库查询语句怎么写啊?我现在出来的是:在一列显示4个标题!现在的语法是:
 
                   <%
set rs=server.CreateObject("adodb.Recordset")
sql="select  name from kehu "
rs.open sql,conn,1,1
if rs.eof then%>
                  
    <tr>
                              <td height="8" align="center"><strong>暂无客户信息!</strong></td>
                            </tr>
                            <%else
do while not rs.eof
%>
                            <tr>
                              <td height="22"><img height="5" src="image/icon_dot01.gif" width="5">
                                <%if len(rs("name")) > 14 then Response.write left(rs("nema"),14)&"..." else Response.write rs("name") end if%>
                              </td>
                            </tr>
                            <%     
rs.movenext
loop
rs.close
set rs=nothing
end if%>              

请问应该怎么修改啊?让他一行显示4个文章标题!
9 回复
#2
wangjy5002010-08-09 12:48
循环放在<tr>里面.
#3
hinone2010-08-09 13:17
试了,没用啊!能详细说明一下吗?谢谢!或者是让他生成的格式和表格一样,一行4条!
#4
lele20072010-08-09 13:42
sql="select top 4 name from kehu "
#5
hams2010-08-09 17:27
<%
set rs=server.CreateObject("adodb.Recordset")
sql="select  name from kehu "
rs.open sql,conn,1,1
if rs.eof then%>
                  
    <tr>
                              <td height="8" align="center"><strong>暂无客户信息!</strong></td>
                            </tr>
                            <%else %>
                            <tr>
                              <td height="22"><img height="5" src="image/icon_dot01.gif" width="5">
                                <%
do while not rs.eof
if len(rs("name")) > 14 then Response.write left(rs("nema"),14)&"..." else Response.write rs("name") end if
rs.movenext
loop
%>
                              </td>
                            </tr>
                            <%    rs.close
set rs=nothing
end if%>         
#6
xq宁静致远2010-08-10 09:44
left(rs("nema"),14)写错了不会提示错误么?改成left(rs("name"),14)
#7
funky2010-08-10 12:25
你要横着排,你就要知道html语言了.


你现在的循环是在<tr></tr>里,当然是列排.  你在循环前加个</td></tr><tr><td>

就行了
#8
hinone2010-08-10 19:20
<table width="94%" border="0" align="right" cellpadding="0" cellspacing="0">
                <tr>
                <%
set rs=server.CreateObject("adodb.Recordset")
sql="select  * from kh "
rs.open sql,conn,1,1
if rs.eof then%>
                  
    <tr>
                              <td height="8" align="center"><strong>暂无客户信息!</strong></td>
                            </tr>
                            <%else
do while not rs.eof
%>
                            <tr>
                              <td height="22"><img height="5" src="image/icon_dot01.gif" width="5">
                                <%if len(rs("name")) > 100 then Response.write left(rs("nema"),100)&"..." else Response.write rs("name") end if%>
                              </td>
                            <td>
                            <%     
rs.movenext
loop
rs.close
set rs=nothing
end if%>
</td>                  
</tr>                  
               
              </table>

这是我现在的写法!
现在显示的是
A
A
A
A
A
A
A
A
这样的,我想让他显示成
A A
A A
A A
A A
就是一个TABLE里,现在显示的是一列,我想让他变成,达到20条后,自动变成2列!高手帮忙啊,救命啊!
#9
funky2010-08-19 12:33
<table width="94%" border="0" align="right" cellpadding="0" cellspacing="0">
<tr><td>
<%
set rs=server.CreateObject("adodb.Recordset")
sql="select  * from kh "
rs.open sql,conn,1,1
if rs.eof and rs.bof then
else
i=0
do while not rs.eof '现在这里开始循环
if a mod 20 =0 then '如果是20的倍数则插入分格符
response.write "</td><td>"
end if
%>
<table><tr><td><img height="5" src="image/icon_dot01.gif" width="5">
                                <%if len(rs("name")) > 100 then Response.write left(rs("nema"),100)&"..." else Response.write rs("name") end if%>
</td></tr></table>
 <%     
 i=i+1
rs.movenext
loop
rs.close
set rs=nothing
end if%>
</td></tr></table>
#10
funky2010-08-19 12:33
do while not rs.eof '现在这里开始循环
if a mod 20 =0 then '如果是20的倍数则插入分格符
response.write "</td><td>"
end if

中的 a mod 20 写错  是 if i mod 20 = 0 then
1