html таблица для отображения фотогалереи php - PullRequest
0 голосов
/ 27 октября 2011

Мне нужно отобразить фотогалерею в таблице, я хочу пять картинок в каждой строке, но не могу найти способ вставить </tr><tr> после каждого пятого изображения. Вот мой код:

<?php

// table name
$tbl_name=gallery1;
$sql="SELECT * FROM $tbl_name";
$result=mysql_query($sql);

while($rows= mysql_fetch_assoc($result)){

$id         = $rows['id'];
$path       = $rows['path'];
$image_name = $rows['image_name'];
$title      = $rows['title'];
?>


<img src="<?php echo $path."/".$image_name;?>" height="120"/>Name:<?php echo $title;?>
<?php
echo "<form action='pictry.php' enctype='multipart/form-data' method='post'>
<input name='file[]' type='hidden' value='".$image_name."' />
<input name='id' type='hidden' id='id' value='".$id."'/>
<input type='submit' name='button' id='button' value='Delete Picture' /></form>";

}
?>

Ответы [ 2 ]

1 голос
/ 27 октября 2011

Замените строку

while($rows= mysql_fetch_assoc($result)){

на

for($i = 0; $rows= mysql_fetch_assoc($result); ++$i) {

Затем поместите что-то подобное в цикл for.

if($i % 5 == 0) { /* insert stuff */ }
0 голосов
/ 27 октября 2011

непроверенный код

<?php
  $perrow = 5;
  $i = 0;
  echo '<table>';
  echo '<tr>';
  while($rows = mysql_fetch_assoc($result)) {
    echo '<td><img src=[grapresultfromrows] /></td>';
    ++$i;
    if($i == $perrow) {
      $i = 0;
      echo '</tr>';
      echo '<tr>';
    }
  }
  // If not a multiple of $perrow you need to add extra cells
  for($i; $i < $perrow; ++$i) {
   echo '<td></td>';
  }
  echo '</tr>';
  echo '</table>';
?>
...