这个php生成的表有什么问题?

时间:2012-10-14 12:18:13

标签: php html-table

我正在尝试通过PHP创建一个表,但是当我加载它时,它会像这样显示它。

printscreen

代码:

<table border="1" cellpadding="5">
<?php
while($test= mysql_fetch_assoc($countquery)){
        echo '<tr><td>';
    echo $test["count"];
    echo 'x</td>';
};
while($row=mysql_fetch_array($topresult)) {
    echo '<td width="150">';
    echo $row["productnaam"];
    echo '</td><td width="100" style="text-align:center;">&euro; ';
    echo $row["prijs"];
    echo '</td><td width="50" style="text-align:center;">';
    echo '<a style="text-decoration:none;color:red;" href="#"><img width="25" src="trash.png"></a>';
    echo '</td></tr>';
};
?>
</table>

我的目标是显示一个包含4列3行的表格。

修改 已经找到它,每次执行第一个<tr>时都会生成一个新的while标记。

2 个答案:

答案 0 :(得分:0)

您正在回显嵌套行。

while($test= mysql_fetch_assoc($countquery)){
    echo '<tr><td>';// Here you open a row
echo $test["count"];
echo 'x</td>';//No closing of row, you close the td and open another tr on the next iteration
};

答案 1 :(得分:0)

块:

while($test= mysql_fetch_assoc($countquery)){
        echo '<tr><td>';
    echo $test["count"];
    echo 'x</td>';
};

将首先创建1个1x,1x,2x的3个单元格, 块下:

 while($row=mysql_fetch_array($topresult)) {
    echo '<td width="150">';
    echo $row["productnaam"];
    echo '</td><td width="100" style="text-align:center;">&euro; ';
    echo $row["prijs"];
    echo '</td><td width="50" style="text-align:center;">';
    echo '<a style="text-decoration:none;color:red;" href="#"><img width="25" src="trash.png"></a>';
    echo '</td></tr>';
};

将从Monitor创建单元格,因此结果会像这样。 要解决此问题,您应该将结果从第一个while循环保存到数组,然后在第二个while循环中进行