MySQL-PHP:在表格行中显示结果(每行5个结果)

MySQL-PHP:在表格行中显示结果(每行5个结果),php,mysql,Php,Mysql,我的数据库里有10张图片。我想每个表行显示5个图像 图1-图2-图3-图4-图5 (新行) 图像6-图像7-图像8-图像9-图像10 我如何使用MySQL和PHP做到这一点 我的代码: $query = mysql_query("SELECT * FROM gallery WHERE gallery_number='$gallery_number'"); while($fetch = mysql_fetch_assoc($query)){ $image_name = $fetch['ima

我的数据库里有10张图片。我想每个表行显示5个图像

图1-图2-图3-图4-图5

(新行)

图像6-图像7-图像8-图像9-图像10

我如何使用MySQL和PHP做到这一点

我的代码:

$query = mysql_query("SELECT * FROM gallery WHERE gallery_number='$gallery_number'");
while($fetch = mysql_fetch_assoc($query)){

  $image_name = $fetch['image_name'];
  $image_location = $fetch['image_location'];

  echo '<table width="960">';
  echo '<tr>';
  echo '<td>'.'<img src="'.$image_location.'" alt="'.$image_name.'"/>'.'</td>'; 
  echo '</tr>';
  echo '</table>';  
}
$query=mysql\u query(“从gallery中选择*,其中gallery\u编号=“$gallery\u编号”);
while($fetch=mysql\u fetch\u assoc($query)){
$image_name=$fetch['image_name'];
$image_location=$fetch['image_location'];
回声';
回声';
回音“.”;
回声';
回声';
}
如您所见,结果仅显示在一个大行中。我必须补充的是,行需要随着结果展开

榜样;每个结果可能有10多个图像。比如说,可能有20个图像,这意味着我需要4行…

$query=mysql\u query(“从gallery中选择*,其中gallery\u number='$gallery\u number'”);
    $query = mysql_query("SELECT * FROM gallery WHERE gallery_number='$gallery_number'");

    echo '<table width="960">';
    $i = 0; //first, i set a counter 
    while($fetch = mysql_fetch_assoc($query)){
    //counter is zero then we are start new row  
        if ($i==0){
            echo '<tr>';
        }
        //here we creating normal cells <td></td>
        $image_name = $fetch['image_name'];
        $image_location = $fetch['image_location'];
        echo '<td>'.'<img src="'.$image_location.'" alt="'.$image_name.'"/>'.'</td>';   
        //there is a magic - if our counter is greater then 5 we set counter to zero and close tr tag  
        if ($i>5){
            $i=0;
            echo '</tr>';
        };  
        $i++; //$i = $i + 1 - counter + 1
    }
    echo '</table>';  
回声'; $i=0//首先,我设置了一个计数器 while($fetch=mysql\u fetch\u assoc($query)){ //计数器为零,然后我们开始新的一行 如果($i==0){ 回声'; } //我们在这里创建正常细胞 $image_name=$fetch['image_name']; $image_location=$fetch['image_location']; 回音“.”; //这是一个魔术-如果我们的计数器大于5,我们将计数器设置为零并关闭tr标签 如果($i>5){ $i=0; 回声'; }; $i++;//$i=$i+1-计数器+1 } 回声';
创建一个计数器,当其值变为5时,关闭该行,以便您的图像名称打印出
image6-image7-image8-image9-image10
,否则我不明白您的问题?向他解释,您做了什么以及为什么它工作。不要只是粘贴代码!@Przeqpiciel非常感谢您提供上述代码,它正是我所需要的。感谢您在代码中添加的注释,这有助于我理解您所做的操作。出于某种原因,此脚本在第一行末尾添加了一个额外的图像,是否有帮助解决此问题?这是最好且最简单的方法,但您可以删除if($i==0)语句,并将其与echo“”放在同一个echo中;被称为“回声”;然后在回音“”的顶部放置一个;只是让它更具可读性。