重新分解这个mysql表显示代码

时间:2014-07-16 15:50:55

标签: php mysql function html-table

我并不完全熟悉PHP,但我在回答MySQL查询函数中收集的值时遇到了一些问题。

我相信我知道问题出在哪里,但我没有足够的能力解决问题,如果你能帮助它,我们将不胜感激。

PHP功能(完美无缺)。

<?php
$dbhost = 'localhost';
$dbuser = 'user';
$dbpass = 'password';
$conn = mysql_connect($dbhost, $dbuser, $dbpass);
if(! $conn )
{
    die('Could not connect: ' . mysql_error());
}
$sql = 'SELECT Name, Role, Salary FROM `users-table`';

mysql_select_db('user_records');
$retval = mysql_query( $sql, $conn );
if(! $retval )
{
    die('Could not get data: ' . mysql_error());
}
while($row = mysql_fetch_array($retval, MYSQL_ASSOC))
{
    echo "--------------------------------<br>",
         "Name: {$row['Name']}  <br> ".
         "Role: {$row['Role']} <br> ".
         "Salary : {$row['Salary']} <br> ".
         "--------------------------------<br>";
}
mysql_close($conn);
?>

这完全显示数据!但是,我现在正试图将其包含在格式良好的HTML表格中。 (这就是我关闭上面的php标签的原因。)

然后我尝试使用这样的表:

<table >
        <tr>
            <td>
                <?php echo $row['Name'] ?>
            </td>
....

它没有输出, - 我认为这个问题是因为我关闭了第一个函数然后尝试引用$row并且它不知道该怎么做...?

我想我需要点击while($row = mysql_fetch_array($retval, MYSQL_ASSOC)) 我如何重新考虑这个因素,以便将上述函数中的内容回显到我的表中?

2 个答案:

答案 0 :(得分:0)

你没有写下你尝试过的代码,但这里有一些功能:

$link = mysqli_connect("myhost", "myuser", "mypassw", "mybd");
echo "<table>";
while ($row = mysqli_fetch_array($link, $retval, MYSQL_ASSOC)) {
    echo "
        <tr>
            <td>{$row['Name']}</td>
            <td>{$row['Role']}</td>
            <td>{$row['Salary']}</td>
        </tr>
    ";
}
echo "</table>";

PS:由于不推荐使用MySQL,我将代码替换为MySQLi,我建议你这样做:)

答案 1 :(得分:0)

正如@zessx所说,你应该使用MySQLi或PDO。

无论如何要回答你的问题,你必须改变你的PHP代码中的循环

while($row = mysql_fetch_array($retval, MYSQL_ASSOC))
{
    echo "--------------------------------<br>",
         "Name: {$row['Name']}  <br> ".
         "Role: {$row['Role']} <br> ".
         "Salary : {$row['Salary']} <br> ".
         "--------------------------------<br>";
}

echo '<table>';
while($row = mysql_fetch_array($retval, MYSQL_ASSOC))
{
    echo "  <tr>" . 
         "    <td>Name: {$row['Name']}</td>".
         "    <td>Role: {$row['Role']}</td>".
         "    <td>Salary : {$row['Salary']}</td>".
         "  </tr>";
}
echo '</table>';