dim j,row_num
j=1
row_num=2
response.write "<table>"
do while not rs.eof
if (j mod row_num)=1 then
response.write "<tr>"
end if
response.write "<td>"&rs("id")&"</td>"
if (j mod row_num)=0 then
response.write "</tr>"
end if
j=j+1
rs.movenext
loop
response.write "</tr>"
response.write "</table>"
%>
j=1
row_num=2
response.write "<table>"
do while not rs.eof
if (j mod row_num)=1 then
response.write "<tr>"
end if
response.write "<td>"&rs("id")&"</td>"
if (j mod row_num)=0 then
response.write "</tr>"
end if
j=j+1
rs.movenext
loop
response.write "</tr>"
response.write "</table>"
%>
$i=0;
echo "<tr>";
while(.$rs=取记录的代码...){
echo "<td>". $rs['name']."</td>";
$i++;
if($i%3==0&&i>0)
echo $</tr><tr>";
}
echo "</tr>";
恐怕没有更好的办法了
我明白它是什么意思了。你可以用javascript来实现你的要求,而且不用改动你的模板。
但是不知道你的模板是怎么写的,所以给你一个方法。<script language="javascritp">
i = 1;
</script>
<table></tr>
----------------循环开始------------------------
<td><?=$value; ?><td>
<script language="javascritp">
if(i%3==0) document.write("</tr><tr>");
i = i+1;
</script>
----------------循环结束-----------------------
</tr></table>
还是举个白痴例子吧!
__________________________________
| 图书 |
|_________________________________|
| 计算机类 | 外语类 |
|________________|________________|
| 文学类 | 经管类 |
|________________|________________|
这是一个模拟的可视化表格以输出图书为例.
因为图书很多我要把它分成两列来表示就象上面的.
现在我用的是模板变量如下图所示. __________________________________
| {图书} |
|_________________________________|
<!-- begin book_block -->(循环开始标记 )
_________________________________
| {book} |
|_________________________________|
<!-- end book_block -->(循环结束标记)
我如何才能使这个模板解析后产生如上面一样的效果呢?
我要在{book}这个模板变量上做些什么工作呢?
比如我写了如下代码.
...
while ($row = $db->sql_fetchrow($result))
{
$template->assign_block_vars('book_block',array('book'=>$row[book]));
}
...
这样的话我只能实现单列向下循环了要实现跟上面显示的一样的效果我就如何处理这一步呢?!
当然笨方法是有的我想要一个高明清晰的办法,(比如function())请高手指教.
<!-- begin book_block -->
<tr>
<!-- begin book_block_sub -->
<td>{book}</td>
<!-- end book_block_sub -->
</tr>
<!-- end book_block -->对book_block_sub赋值 n 次后对book_block赋值
n=1时就是你上面的例子真苯,没看出你用的是什么模板类!:)
实话说吧,我用的是PHPBB里的模板类.
大家如果有兴趣的话,可以谈谈对PHPBB的看法的.
我个人以为它写得不错,淘宝网大致就用这种方法写的.
简单、方便、还挺实惠(?)。
要不用CSS也可以的呀!
<table><tr>
<!-- begin book_block -->(循环开始标记 )
_________________________________
| {book} |
|_________________________________|
<script language="javascritp">
if(i%3==0) document.write("</tr><tr>");
i = i+1;
</script>
<!-- end book_block -->(循环结束标记)
</tr></table>再整理一下:
<script language="javascritp">
i = 1;
function writeBR(){
if(i%3==0) document.write("</tr><tr>");
i = i+1;
}
</script>
<table><tr>
<!-- begin book_block -->(循环开始标记 )
_________________________________
| {book} |
|_________________________________|
<script language="javascritp">j=writeBR();</script>
<!-- end book_block -->(循环结束标记)
</tr></table>
我用的是SMARY
用<{html_table loop=$arrayclass cols=3 table_attr='border=0'}>