好的,我知道这已被问到,但我觉得我的情况有点不同而且独一无二。我有我的PHP和HTML代码合并在一起,它是一个表9图像长而不是3乘3.也是一个次要的问题,如果有人善于帮助我,我希望将所有图片格式化为相同的大小让桌子看起来更好,任何帮助表示赞赏。
这是我的表格文件
<?php
// Get our database connector
require("includes/conn.php");
?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<body>
<div>
<?php
// Grab the data from our people table
$sql = "select filename from people LIMIT 9";
$result = mysql_query($sql) or die ("Could not access DB: " . mysql_error());
$count = mysql_num_rows(result);
$i = 0;
$per_row = 3;
echo '<table><tr>';
while ($row = mysql_fetch_assoc($result))
{
echo "<td><img src=\"images/" . $row['filename'] . "\" alt=\"\" /><br /></td>";
if(++$i % $per_row == 0 && $i > 0 && $i < $count) {
# Close the row
echo '</tr><tr>';
}
}
for($x = 0; $x < $per_row - $i % $per_row; $x++) {
echo '<td></td>';
}
echo '</tr></table>';
?>
</div>
</body>
答案 0 :(得分:1)
我相信你在错误的地方卷曲了。您在检查后立即关闭整个while
循环,看看是否需要关闭表格行。
答案 1 :(得分:1)
你有:
$count = mysql_num_rows(result);
而不是:
$count = mysql_num_rows($result);
这是一个工作模拟,使用数组而不是mysql调用:http://codepad.org/Fyv2mIvS