使用PHP在HTML页面中显示SQL表格内容

时间:2015-11-08 13:35:44

标签: php html mysql

我有一个SQL表,我想在HTML页面中显示它。 我的代码显示一个表,但内容为空,尽管我的表填充了数据。

    <?php
        ini_set('display_errors', 'On');
        error_reporting(E_ALL);

        $database = 'karin';
        $connect = mysql_connect('localhost','root', 'karin');
        if (!$connect) {
            die(mysql_error());
        }
        if (!mysql_select_db($database))
            die("Can't select database");

        $results = mysql_query("SELECT * FROM service_messages");
        if (!$results) {
            die("Query to show fields from table failed");
        }


        while($row = mysql_fetch_array($results)) {
        ?>
            <tr>
                <td><?php echo $row['partner']?></td>
                <td><?php echo $row['GUID']?></td>
                <td><?php echo $row['serviceName']?></td>
                <td><?php echo $row['serviceID']?></td>
                <td><?php echo $row['countries']?></td>
                <td><?php echo $row['rate']?></td>
                <td><?php echo $row['ips']?></td>
                <td><?php echo $row['callback']?></td>
            </tr>

        <?php
        }
        ?>
        </tbody>
        </table>
</body>

为什么不显示表格内容? 谢谢!

3 个答案:

答案 0 :(得分:2)

1)。不要使用 mysql _ * 。请使用PDO或MySQLi。

2)。我在代码中的任何地方都找不到任何<table>(表格起始标记)。

3)。使用mysql_fetch_assoc代替mysql_fetch_array

这是更新的代码。

    $database = 'karin';
    $connect = mysql_connect('localhost','root', 'karin');
    if (!$connect) {
        die(mysql_error());
    }
    if (!mysql_select_db($database))
        die("Can't select database");

    $results = mysql_query("SELECT * FROM service_messages");
    if (!$results) {
        die("Query to show fields from table failed");
    }
     ?>
    <table>
    <?php
    while($row = mysql_fetch_assoc($results)) {
    ?>
        <tr>
            <td><?php echo $row['partner']?></td>
            <td><?php echo $row['GUID']?></td>
            <td><?php echo $row['serviceName']?></td>
            <td><?php echo $row['serviceID']?></td>
            <td><?php echo $row['countries']?></td>
            <td><?php echo $row['rate']?></td>
            <td><?php echo $row['ips']?></td>
            <td><?php echo $row['callback']?></td>
        </tr>

    <?php
    }
    ?>
    </tbody>
    </table>

答案 1 :(得分:0)

试试这个

 while($row = mysql_fetch_row($results)) {
        ?>
            <tr>
                <td><?php echo $row['partner']?></td>
                <td><?php echo $row['GUID']?></td>
                <td><?php echo $row['serviceName']?></td>
                <td><?php echo $row['serviceID']?></td>
                <td><?php echo $row['countries']?></td>
                <td><?php echo $row['rate']?></td>
                <td><?php echo $row['ips']?></td>
                <td><?php echo $row['callback']?></td>
            </tr>

        <?php
        }
        ?>

更多参考: http://php.net/manual/en/function.mysql-fetch-row.php

答案 2 :(得分:0)

嗯,出于某种原因,它的工作原理如下:

    <?php
    //ini_set('display_errors', 'On');
    //error_reporting(E_ALL);

    $mysqli = new mysqli("localhost", "root", "2014", "cd");

    $q = $mysqli->query("select * from service_messages");

    while($row = $q->fetch_assoc()){
        $arr[] = $row;
    }
    echo json_encode($arr);



?>