如何有效地将数据显示为数据库中每个项目的HTML?

时间:2014-01-15 02:19:04

标签: php

我有一个名为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>

我的编码格式是否可以接受,还是可以更有效地完成?谢谢。

1 个答案:

答案 0 :(得分:0)

这究竟是怎么回事。这就是我做的方式。这就是php的优点,你可以在循环中插入html代码,根据你数据库中的内容创建一个动态的html页面。

这就是为什么php和html很好地结合在一起,你可以形成很棒的动态页面。

你是正确的赛道搭档。有人可能会建议一个更优雅的解决方案,这并不意味着您的解决方案是错误或低效的。它甚至出现在php和mysql部分的w3Schools教程网站上。所以你很好。

古德勒克!

更新1

如果没有数据要显示在数据库中,你可以做一些改进,如果检查并返回其他内容,否则你的网页只会显示一个空白页面,因为当没有来自的数据时,while循环不会被执行你的数据库。