将mySQL表打印到网页

时间:2014-04-02 16:34:58

标签: php mysql

我是php的新手,我想用它将mySQL表的内容打印到网页上。到目前为止,我有'连接到数据库'部分,但我真的很困惑如何实际打印数据,最好是在HTML表格中。

我的PHP:

<?php    

$username="root";
$password="password";
$database="posts";
mysql_connect("localhost",$username,$password);
mysql_select_db($database) or die( "Unable to select database");

$query= "SELECT * FROM input";

$result=mysql_query($query);

mysql_close();

?>

我的网页HTML:

<!doctype html>

<html lang="en">

<head>
  <meta charset="utf-8">
  <link rel="stylesheet" href="css/viewstyle.css">
  <title>Database View</title>
</head>

<body>
    <h1> Database View Page </h1>
    <p> Here you can view the Database </p>
    <script src="display.php"></script>
</body>
</html>

感谢您的时间。

编辑:

<!doctype html>

<html lang="en">

<head>
  <meta charset="utf-8">
  <link rel="stylesheet" href="css/viewstyle.css">
  <title>Database View</title>
</head>

<body>
    <h1> Database View Page </h1>
    <p> Here you can view the Database </p>


    <?php

        $username="root";
        $password="password";
        $database="posts";
        mysql_connect("localhost",$username,$password);
        mysql_select_db($database) or die( "Unable to select database");

        $query= "SELECT * FROM input";

        $result=mysql_query($query);

        echo "<table border='1' cellpadding='10'>";
        echo "<tr><th>First name</th><th>Last name</th><th>Age</th></tr>";

        while($row = mysql_fetch_array($result))
         {
          echo '<td>' . $row['firstname'] . '</td>';
          echo '<td>' . $row['surname'] . '</td>';
          echo '<td>' . $row['age'] . '</td>';
          echo "</tr>"; 
          }
         echo "</table>";

                     mysql_close();

    ?>

</body>
</html>

当我的页面加载时,它现在显示:

“”; echo“样品说明”; while($ row = mysql_fetch_array($ result)){echo''。 $ row ['firstname']。 '';回声''。 $ row ['surname']。 '';回声''。 $ row ['age']。 ''; echo“”; echo“”; ?&GT; mysql_close(); “

作为我网页上的文字。

3 个答案:

答案 0 :(得分:3)

你需要使用循环,我在这个例子中使用while循环。

取决于您希望显示的列:

修改$row['column'](列是列本身的名称)

<?php
$username="xxx";
$password="xxx";
$database="xxx";
mysql_connect("localhost",$username,$password);
mysql_select_db($database) or die( "Unable to select database");

$query= "SELECT * FROM input";

$result=mysql_query($query);

    while($row = mysql_fetch_array($result))
    {
    echo '<p>'.$row['column'].' </p>';
    }

mysql_close();

?>

如果要在HTML表格中显示它,可以使用以下内容:

echo "<table border='1' cellpadding='10'>";
    echo "<tr> <th>Sample</th> <th>Sample Description</th></tr>";

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

如果您想要显示更多列,只需添加另一个:

echo '<td>' . $row['column_1'] . '</td>';
echo '<td>' . $row['column_2'] . '</td>';
echo '<td>' . $row['column_3'] . '</td>';

依旧......

并为顶部单元格添加第3个标题:

echo "<tr><th>Row 1</th><th>Row 2</th><th>Row 3</th></tr>";

如果您想添加更多单元格标题,只需在<th>Row X</th>之前添加更多</tr>


旁注:

作为Marc B pointed out in a comment,您可能希望使用href代替<script src="display.php"></script>,具体取决于该文件中未在您的问题中发布的内容。

例如:

<a href="display.php">View database</a>

<强>脚注:

mysql_*函数弃用通知:

http://www.php.net/manual/en/intro.mysql.php

从PHP 5.5.0开始,不推荐使用此扩展,不建议用于编写新代码,因为将来会删除它。相反,应使用mysqliPDO_MySQL扩展名。在选择MySQL API时,另请参阅MySQL API Overview以获得进一步的帮助。

这些功能允许您访问MySQL数据库服务器。有关MySQL的更多信息,请访问»http://www.mysql.com/

可以在»http://dev.mysql.com/doc/找到MySQL的文档。

答案 1 :(得分:0)

获得MySQL结果后,您需要从中读取行。

查看mysqli_fetch_assoc上的示例代码(示例#2程序样式)

另外:mysql已弃用,请使用mysqli

答案 2 :(得分:0)

您应该使用mysqli_fetch_array()这比使用方法更容易。