我有一个名为products的数据库。在这个DB中我有一个名为image_id的字段。我想在表格的单元格中显示每个image_id,每行最多3个单元格。
这就是我写的。我只是想确保我没有无理由地强调我的服务器......
$HTML="<table><tr>";
$i=0;
$count=0;
@mysql_select_db($DB_DATABASE);
$query="SELECT image_id FROM produts";
$res=mysql_query($query);
while(list($image_id)=mysql_fetch_array($res))
{
$count++;
$i++;
$HTML.="<td>$image_id</td>";
if(($i%3)==0)
$HTML.="</tr><tr>";
}
$HTML.="</table>";
我的理解是这应该输出这样的......
<table>
<tr>
<td>image_id_1</td>
<td>image_id_2</td>
<td>image_id_3</td>
</tr>
<tr>
<td>image_id_4</td>
<td>image_id_5</td>
<td>image_id_6</td>
</tr>
</table>
我的编码格式是否可以接受,还是可以更有效地完成?谢谢。
答案 0 :(得分:0)
这究竟是怎么回事。这就是我做的方式。这就是php的优点,你可以在循环中插入html代码,根据你数据库中的内容创建一个动态的html页面。
这就是为什么php和html很好地结合在一起,你可以形成很棒的动态页面。
你是正确的赛道搭档。有人可能会建议一个更优雅的解决方案,这并不意味着您的解决方案是错误或低效的。它甚至出现在php和mysql部分的w3Schools教程网站上。所以你很好。
古德勒克!
更新1
如果没有数据要显示在数据库中,你可以做一些改进,如果检查并返回其他内容,否则你的网页只会显示一个空白页面,因为当没有来自的数据时,while循环不会被执行你的数据库。