如何在表中仅显示结果的一列

时间:2014-05-31 01:04:57

标签: php mysql html-table

我是PHP新手,我在显示MySQL查询结果时遇到问题。

所以我有一个名为Teams的表,每个条目包含两个字段: 名称和大陆。

我向MySQL数据库发送一个查询,以获取大陆字段等于"亚洲的所有记录。"然后我试图在HTML表格中仅打印这些团队的名称。

现在我可以得到所需的名字,但是我的桌子右侧有一个额外的空栏,我不明白如何摆脱它。

这是我的代码:

$query = 
    "SELECT name from Teams WHERE continent='Asia'";
    $result = mysql_query($query);
    if(!$result){
        echo 'Retreive Query Fail' . mysql_error();
    }
?>

<div style="text-align: center; color: #000000">
    Teams in Asia
</div>

<table>

    <caption>
        <dfn title="my table"></dfn>
    </caption>

    <tr>
        <th>Team Names</th>
    </tr>

    <?php
        while($row=mysql_fetch_array($result)){
            echo '<tr>';
            echo '<td>' . $row["name"] . '<td>';
            echo '</tr>';
        }
    ?>
</table>

这是结果的图片,我想要摆脱的是桌子右边的那些盒子。 (请忽略可怕的配色方案/布局。我以前从未做过网页设计。)

Image of Table

2 个答案:

答案 0 :(得分:1)

正确关闭<td>代码,而不是添加另一个:

while($row=mysql_fetch_array($result))
{
    echo '<tr>';
    echo '<td>' . $row["name"] . '</td>';
                            // ^ This guy.
    echo '</tr>';
}

答案 1 :(得分:1)

echo '<td>' . $row["name"] . '<td>';

应该是

echo '<td>' . $row["name"] . '</td>';