【问题标题】:Displaying MySQL Records in a HTML Table. What fails?在 HTML 表中显示 MySQL 记录。什么失败了?
【发布时间】:2013-03-12 19:27:11
【问题描述】:

我在 HTML 表中显示 MySQL 记录时遇到问题

代码如下:

    <html>
<head>
</head>
<body>
<?php
                        $con = mysql_connect("localhost", "root", "");
                        if (!con) {
                        die ("Can not connect: " . mysql_error());
                        }

                        mysql_select_db ("regform", $con);

                        $sql = "SELECT * FROM contacts";
                        $myData = mysql_query($sql, $con);
                      echo 'test';    
                        echo "<table border = '1'>

                        <tr>
                        <th>Name</th>
                        <th>Lastname</th>
                        <th>Phone</th>
                        <th>Email</th>
                        <th>Comment</th>
                        </tr>";

                        while($record = mysql_fetch_array($myData)) {
                        echo "<tr>";
                        echo "<td>" . $record['Name'] . "</td>";
                        echo "<td>" . $record['Lastname'] . "</td>";
                        echo "<td>" . $record['Phone'] . "</td>";
                        echo "<td>" . $record['Email'] . "</td>";
                        echo "<td>" . $record['Comment'] . "</td>";
                        echo "</tr>";

                        }

                        echo "</table>";

                        mysql_close ($con);

                        ?>
</body>
</html>

我在浏览器上看到了这个:

姓名 姓氏 电话 电子邮件 评论 "; while($record = mysql_fetch_array($myData)) { echo ""; echo "" . $record['Name'] . ""; echo "" . $record['Lastname '] . ""; echo "" . $record['Phone'] . ""; echo "" . $record['Email'] . ""; echo "" . $record['Comment'] . "" ; echo ""; } echo ""; mysql_close ($con); ?>

【问题讨论】:

  • 这是一个.html 页面,对吧?将其重命名为.php
  • 看起来您的 PHP 没有被解析。文件是否以 .php 结尾?你有任何错误吗?你能用&lt;?php phpinfo() ?&gt; 运行一个PHP 页面吗?
  • 听起来您的服务器没有安装或设置 PHP。
  • 您正在运行什么网络服务器?并且您是否安装了正确的模块(如果您正在运行 apache,您是否有 mod-php)?

标签: php html mysql


【解决方案1】:

您的网络引擎未呈现您的php。它需要具有 *.php 扩展名并位于处理它的服务器上。

【讨论】:

  • 从技术上讲,页面必须以 .php 结尾,因为您可以轻松配置 Web 服务器以将任何扩展名解析为 PHP 文件。
【解决方案2】:

我想这与多行有关

             echo "<table border = '1'>

                    <tr>
                    <th>Name</th>
                    <th>Lastname</th>
                    <th>Phone</th>
                    <th>Email</th>
                    <th>Comment</th>
                    </tr>";

也许你试试这个:

echo <<<END
<table border = '1'>

                    <tr>
                    <th>Name</th>
                    <th>Lastname</th>
                    <th>Phone</th>
                    <th>Email</th>
                    <th>Comment</th>
                    </tr>

结束;

【讨论】:

  • 不是真的。只要报价是打开的,你就可以用 echo 做多行
  • 另外,如果是这种情况,它会出错,不会渲染包括 PHP 在内的所有内容。
  • 是的,这与手头的问题无关。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2011-07-28
  • 1970-01-01
  • 2017-05-30
  • 1970-01-01
  • 2013-01-27
  • 2012-10-24
  • 1970-01-01
相关资源
最近更新 更多