Я создаю шаблон бюллетеня, который может отображать новости в табличной форме, но я хочу, чтобы новость отображалась в двух столбцах за строку. Пожалуйста, проверьте этот URL-адрес, чтобы узнать, что я говорю о http://www.ipaidabribenaija.com/newsletter.php. Спасибо.
<?php $conn = mysql_connect("localhost", "rppt", "peep") or die(mysql_error()); mysql_select_db('news', $conn) or die(mysql_error()); $query = mysql_query ("Select i.nid, LEFT(i.fulltext, 350), UPPER(i.title), LOWER(c.name) from nl i JOIN jos_k2_categories c ON c.id=i.catid ORDER BY i.id LIMIT 0, 16") or die ('Error'); $href = "http://www.ipaidabribenaija.com/index.php"; ?> <table width="500px" align="center"> <tbody> <tr> <td width="400px" height="344px" valign="top"> <table cellspacing="5"> <tbody> <?php while(list($id, $fulltext, $title, $name)=mysql_fetch_array($query)) { $i = 0; ?> <?php $replacename = eregi_replace(" ", "-", $name); ?> <tr> <td height="34"> </td> </tr> <?php if($i%2 == 0) { ?> <tr> <tr> <td height="34"> <font color="#FF0000" size="+2"><strong><?php echo $title; ?></strong></font> </td> </tr> <tr> <td height="34"><p><?php echo $fulltext; ?>...</p> <p><a href="<?php echo $href ."/". $replacename ."/item/". $id; ?>">read more...</a></p> </td> </tr> <?php } else{ ?> <tr> <td height="34"><font color="#FF0000" size="+2"><strong><?php echo $title; ?></strong></font> </td> </tr> <tr> <td height="34"><p><?php echo $fulltext; ?>...</p> <p><a href="<?php echo $href ."/". $replacename ."/item/". $id; ?>">read more...</a></p></td> </tr> <?php } } ?> </tr> </tbody> </table> </td> </tr> </tbody> </table>
Это даст вам большую часть пути:
echo '<tr>'; $i = 0; while(...) { if($i > 0 and $i % 2 == 0) { echo '</tr><tr>'; } echo '<td>My data</td>'; $i++; } echo '</tr>;
Использовать свойство rowspan и colspan html
<tr> <td>A</td> <td colspan="2"> </td> </tr>
После выполнения запроса вы можете написать следующее:
<table> <?php $rows = 1; $while($news = @mysql_fetch_array($query)){ if($rows % 2 != 0){ echo "<tr><td>" . $news['details'] . "</td>"; } else { echo "<td>" . $news['details'] . "</td></tr>"; } $row++; } if($rows % 2 != 0){echo "<td> </td></tr>"; } ?> </table>
С помощью этого кода вы создаете таблицу для инициализации переменной с 1, только для проверки количества строк.
В конце, если у вас есть 3 новости, скрипт завершит строку и пустую ячейку.