<body>
<?php
include_once 'mysql.php';
$C = "";
$rownum = 5; //每行要显示的车标数
$picindex = 1; //$picindex 车标序号
$newrow = 0; //是否换行 ,值为 1 时换行(换行即为要输入 <tr>,为 0 时不换行
$logorst = mysqli_query($cnn,"select * from BandLogo where ShowOrder <> '0' ORDER BY ShowOrder ASC");
?><table border="1"><?php
while($row = mysqli_fetch_array($logorst)){
if($picindex > $rownum){
$picindex = 1;
$newrow = 1;
}
if($newrow == 1){
echo "<tr>"; //输出 <tr> 即为 换行
} ?>
<td>
<table><tr><td> <?php //定义一个小的表格,只有两个格子,上面一个格子放图片,下面一个格子放名称 ?>
<?php echo $picindex ?>
<a href="qps_showqpslist.php?tag=<?php echo $row['Name'] ?>"><p align="center"><img src=" <?php echo $row['FileName'] ?> "/></p></a>
</td></tr><tr><td>
<a href="qps_showqpslist.php?tag=<?php echo $row['Name'] ?>"><p align="center"><?php echo $row['Name']; ?></p></a>
</td></tr></table>
</td><?php
if($newrow == 1){
echo "</tr>";
$newrow = 0;
}
$picindex++;
}
?></table>
</body>
上面的代码想要每行显示5个图标,但是从第二行开始,就会在第一个图片显示了之后换行,请帮我看看那里有错误呢,谢谢了
------解决方案--------------------
你的
if($newrow == 1){
echo "<tr>"; //输出 <tr> 即为 换行
}
if($newrow == 1){
echo "</tr>";
$newrow = 0;
}
是在一次循环中完成的,自然那行就只有一个单元格了
------解决方案--------------------
标签不完整
if($picindex > $rownum){
$picindex = 1;
$newrow = 1;
}
前五次$picindex 肯定小于$rownum ,也就是说刚开始并没有<tr>的开始标签
------解决方案--------------------
循环里面改为
if($picindex > $rownum){
$picindex = 1;
}
if($picindex == 1){
echo "<tr>"; //输出 <tr> 即为 换行
} ?>
<td>
<table><tr><td> <?php //定义一个小的表格,只有两个格子,上面一个格子放图片,下面一个格子放名称 ?>
友情提示:垃圾评论一律封号 加我微信:826096331拉你进VIP群学习群