【问题标题】:PHP is breaking my codePHP 正在破坏我的代码
【发布时间】:2015-07-21 11:58:23
【问题描述】:

我正在尝试部署一个站点,但是当 PHP/MySql 代码在服务器上运行时出现错误。它在开发中运行良好,但在生产中却不行。

我的代码到这里,没有问题:

<div class="content">
  <section class="col1">
   <h1>Read reviews or write us one</h1>
  </section>
  <section class="col2">
   <button type="button" class="read">Read Reviews</button>
    <?php include ('display.php'); ?>

然后,当我检查源代码时,HTML 就停在那里。我猜在 display.php 文件中我的 PHP 有问题,如下所示:

<?php
$con = mysql_connect('localhost','communi3_root',"password");
mysql_select_db('communi3_cfds','communi3@localhost',"password") or die(mysql_error());
$query = "select * from reviews";
$result = mysql_query($query)or die(mysql_error());
$row = mysql_fetch_array($result);

echo "<table class='displayReviews' border='1' style='width:100%;'>";
echo "<tr stlye='display:block;margin:0em auto;'><th>Name</th><th>Review</th><th>Date</th></tr>";

while ($row = mysql_fetch_array($result))
{
    echo "<tr><td>"; 
    echo $row['monicker'];
    echo "</td><td>";
    echo $row['review'];
    echo "</td><td>";
    echo $row['date'];
    echo "</td></tr>";
}
echo "</table>";
mysql_close();
?>

【问题讨论】:

  • 我在浪费时也这样做了。嗯,如果您看不到错误消息,您打算如何调试任何代码?您需要在您的服务器上找到 php.ini 文件并打开错误和警告(它解释了如何)然后重新启动 apache,这样当您开发它时,您可以看到发生了什么。否则……祝你好运。
  • mysql_select_db()mysql_connect() 不同...您连接了两次,但第二次使用了错误的功能。此外,您不应使用已弃用的 mysql_* 函数。请改用PDOMySQLi。此外,在页面上打印mysql_error() 意味着如果出现问题,人们会看到它,这是非常糟糕的安全性。您应该记录错误。嗯,stlye 不是有效的 HTML 属性。我不会再编辑这条评论了......你真的应该清理你的代码......
  • 在第二行中,or 之后没有任何内容。正如其他人在上面指出的那样,您的 php 代码中有很多错误。
  • @RolenKoh 是的。向右滚动。
  • @Sverri M. Olsen 是的,很抱歉,但格式仍然不正确。

标签: php mysql select mysqli echo


【解决方案1】:

删除一些错误后

<?php
    $con = mysql_connect('localhost','communi3_root',"password");
    mysql_select_db('communi3_cfds',$con) or               die(mysql_error());
    $query = "select * from reviews";
    $result = mysql_query($query)or die(mysql_error());
    $row = mysql_fetch_array($result);
    echo "<table class='displayReviews' border='1' style='width:100%;'>";
    echo "<tr stlye='display:block;margin:0em auto;'><th>Name</th><th>Review</th><th>Date</th></tr>";
    while ($row = mysql_fetch_array($result))
    {
        echo "<tr><td>"; 
        echo $row['monicker'];
        echo "</td><td>";
        echo $row['review'];
        echo "</td><td>";
        echo $row['date'];
        echo "</td></tr>";
    }
    echo "</table>";
    mysql_close();
    ?>

【讨论】:

  • 非常感谢@Qaisar Satti。我现在已经让它工作了,虽然它不是很好的代码,但它必须按照它的功能来做。当我对这种类型的代码有更多经验时,也许我会回来并正确修复它,但就目前而言,我很高兴在网上拥有一个带有自定义软件的功能性网站(尽管不是很优雅)。我认为对于初学者来说还不错。感谢其他所有人的“帮助”。我会努力让我的技能更上一层楼。
猜你喜欢
  • 1970-01-01
  • 2013-12-14
  • 2017-09-30
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多