每行输出固定列数

good__girl 2004-11-09 03:22:38
我想让下边的代码实现一行显示3列,怎么控制
<table width="30%" border="0" cellspacing="0" cellpadding="2">
<?
$sql = "select * from table";
// echo $sql;
$query = $db->query($sql);

while($row = $db->fetch_array($query)) {
?>
<tr>
<td colspan="2"> <img src="<? echo "upload_images/".$row["pic"]?>">
</td>
</tr>
<tr>
<td width="29%">说明: </td>
<td width="71%" rowspan="2"><input type="submit" name="Submit2" value="提交"></td>
</tr>
<tr>
<td>查看:</td>
<?
}
?>
</table>
...全文
177 15 打赏 收藏 转发到动态 举报
写回复
用AI写文章
15 条回复
切换为时间正序
请发表友善的回复…
发表回复
good__girl 2004-11-10
  • 打赏
  • 举报
回复
哈哈 没问题了,多谢了!
erldy 2004-11-10
  • 打赏
  • 举报
回复
哎,都说要你根据要求自己再修改了!!
你这样改肯定不行啦!只要是你表格的排版问题!

<?
echo "<table width=30% border=0 cellspacing=0 cellpadding=2>";
$sql = "select * from pic";
// echo $sql;
$query = $db->query($sql);
$i=3;
while($row = $db->fetch_array($query)) {
if($i%3==0)
echo "<tr>";
echo "<td colspan=2>";
echo "<table width=100% border=0 cellspacing=0 cellpadding=2>";
echo "<tr><td colspan=2><img src=upload_images/".$row["pic"]."></td></tr>";
echo "<tr><td width=29%>说明:</td><td width=71% rowspan=2>";
echo "<input type=submit name=Submit2 value=提交></td></tr>";
echo "<tr><td>查看:</td>";
echo "</table>";
echo "</td>";
$i++;
if($i%3==0)
echo "</tr>";
}
echo "</table>";
?>

试试吧。
good__girl 2004-11-09
  • 打赏
  • 举报
回复
只显图片没问题,一加中间那几行 说明查看提交(按这种格式) 就不行了?
<table width="30%" border="0" cellspacing="0" cellpadding="2">
<?
$sql = "select * from pic";
$query = $db->query($sql);
$i=3;
while($row = $db->fetch_array($query)) {
if($i%3==0)
echo "<tr>";
?>
<td colspan="2"><img src="<? echo "manage/upload_images/".$row["pic"]?>">
</td>


<tr><td width="9%">说明: </td>
<td width="91%" rowspan="2"><input type="submit" name="Submit" value="兑奖"></td>
</tr>
<tr>
<td>查看:</td>




<?
$i++;
if($i%3==0)
echo "</tr>";
}
echo "</table>";
?>
erldy 2004-11-09
  • 打赏
  • 举报
回复
<?
echo "<table width=30% border=0 cellspacing=0 cellpadding=2>";
$sql = "select * from pic";
// echo $sql;
$query = $db->query($sql);
$i=3;
while($row = $db->fetch_array($query)) {
if($i%3==0)
echo "<tr>";
echo "<td colspan=2><img src=\"upload_images/\"".$row["pic"].">";
echo "</td>";
$i++;
if($i%3==0)
echo "</tr>";
}
echo "</table>";
?>

具体你再根据你的需要改了
good__girl 2004-11-09
  • 打赏
  • 举报
回复
字段值就一个图片,这几个都要循环的
erldy 2004-11-09
  • 打赏
  • 举报
回复
你的值是不是就是一张图片啊?但是我看你那段代码还有什么说明、查看、提交?
good__girl 2004-11-09
  • 打赏
  • 举报
回复
把查询结果循环显示,每行显示3列(3个值)
erldy 2004-11-09
  • 打赏
  • 举报
回复
把你的要求写清楚点吧,我都弄不明白你的意图。
good__girl 2004-11-09
  • 打赏
  • 举报
回复
还是不行啊,我这段代码应该怎么写
erldy 2004-11-09
  • 打赏
  • 举报
回复
$i=3;
while($row = $db->fetch_array($query)) {
if($i%3==0)
echo "<tr>";
........(这里是你想横向排列的数据显示)
$i++;
if($i%3==0)
echo "</tr>";
}
erldy 2004-11-09
  • 打赏
  • 举报
回复
你不能照搬的,我给你的只是一个思路,你还没明白这个思路,你先搞懂了这个思路,就知道该怎样去控制换行了。
good__girl 2004-11-09
  • 打赏
  • 举报
回复
<table width="30%" border="0" cellspacing="0" cellpadding="2">
<?
$sql = "select * from pic";
// echo $sql;
$query = $db->query($sql);
$i=3;
while($row = $db->fetch_array($query)) {
if($i%3==0)
echo "<tr>";
?>
<tr>
<td colspan="2"> <img src="<? echo "upload_images/".$row["pic"]?>">
</td>
</tr>
<tr>
<td width="29%">说明: </td>
<td width="71%" rowspan="2"><input type="submit" name="Submit2" value="提交"></td>
</tr>
<tr>
<td>查看:</td>
<?
$i++;
if($i%3==0)
echo "</tr>";
}
?>
</table>

</form>
<? }?>
</td>
</tr>
</table>
erldy 2004-11-09
  • 打赏
  • 举报
回复
把你的代码贴出来看看
good__girl 2004-11-09
  • 打赏
  • 举报
回复
怎么不对呀,这样输出的还是一列
erldy 2004-11-09
  • 打赏
  • 举报
回复
楼主是不是想横向排列输出啊?给个建议,你把html元素也写进php代码,然后用一个变量来控制换行,如:
$i=3;
while($row = $db->fetch_array($query)) {
if($i%3==0)
echo "<tr>";
........
$i++;
if($i%3==0)
echo "</tr>";
}

21,886

社区成员

发帖
与我相关
我的任务
社区描述
从PHP安装配置,PHP入门,PHP基础到PHP应用
社区管理员
  • 基础编程社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧