我正在创建一个可以以表格形式显示新闻的新闻稿模板,但我希望新闻每行显示两列。 请检查此网址,看看我在说什么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>
答案 0 :(得分:2)
这将帮助你完成大部分工作:
echo '<tr>';
$i = 0;
while(...) {
if($i > 0 and $i % 2 == 0) {
echo '</tr><tr>';
}
echo '<td>My data</td>';
$i++;
}
echo '</tr>;
答案 1 :(得分:0)
使用rowspan和colspan html属性
<tr>
<td>A</td>
<td colspan="2"> </td>
</tr>
答案 2 :(得分:0)
执行查询后,您可以写下:
<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条新闻,则脚本将完成该行和一个空单元格。