HTML似乎忽略了PHP命令?

时间:2012-06-22 10:57:49

标签: php mysql html

对于HTML来说,我是一个完全新手,如果我是一个简单的人,我从来不需要做任何网页的事情,所以道歉。

我有一个iOS应用程序的高分表,我想在应用程序的网站上显示它。排行榜在使用PHP和mySQL的应用程序中运行良好,但是当我尝试在HTML文件中使用PHP访问数据库时,它似乎没有关注PHP的逻辑(即,如果我有一个if / else语句,它会运行两种情况)。

以下是我的代码的简化版本,如果与数据库的连接成功,则表头中的第一列将显示“success”,否则将显示“failed”。

<body>

<table class="altrowstable" id="alternatecolor">

<?php
if (!mysql_connect($db_host, $db_user, $db_pwd))
{
    <tr>
    <th>Failure</th><th>Player</th><th>Points</th><th>Played</th><th>Wins</th><th>Draws</th><th>Losses</th>
    </tr>
}
else
{
    <tr>
    <th>Success</th><th>Player</th><th>Points</th><th>Played</th><th>Wins</th><th>Draws</th><th>Losses</th>
    </tr>
}

?>

</table>
</body>

有谁能看到这里做错了什么?我假设if / else会正常工作,但我会将两行插入表中,“失败”和“成功”。

编辑: 我也尝试过使用echo“”;等,但不确定哪种方式是正确的,因为它们在忽略PHP的情况下都给出了同样的错误。

5 个答案:

答案 0 :(得分:5)

将您的代码更改为

    <table class="altrowstable" id="alternatecolor">

    <?php
    if (!mysql_connect($db_host, $db_user, $db_pwd))
    {
?>
        <tr>
        <th>Failure</th><th>Player</th><th>Points</th><th>Played</th><th>Wins</th><th>Draws</th><th>Losses</th>
        </tr>
  <?php
   }
    else
    {
  ?>
        <tr>
        <th>Success</th><th>Player</th><th>Points</th><th>Played</th><th>Wins</th><th>Draws</th><th>Losses</th>
        </tr>
<?php
    }

    ?>

    </table>

答案 1 :(得分:4)

我认为您需要将HTML标记放在echo命令中,如此

echo '<tr>
      <th>Failure</th><th>Player</th><th>Points</th><th>Played</th><th>Wins</th>         <th>Draws</th><th>Losses</th>
      </tr>';

这应该有效

答案 2 :(得分:1)

<?php?>之间只是PHP代码。它将HTML视为PHP。

无论

  1. 使用echo
  2. ?>放在HTML之前,然后<?php>放置(即停止并启动PHP处理)

答案 3 :(得分:1)

检查文件的扩展名。它需要是filename.php 你需要一个服务器来启动PHP代码 你可以像这里一样使用echo heredoc

<body>

<table class="altrowstable" id="alternatecolor">

<?php
if (!mysql_connect($db_host, $db_user, $db_pwd))
{
echo <<<_END
<tr>
<th>Failure</th><th>Player</th><th>Points</th><th>Played</th><th>Wins</th><th>Draws</th><th>Losses</th>
</tr>
_END
}
else
{
echo <<<_END
<tr>
<th>Success</th><th>Player</th><th>Points</th><th>Played</th><th>Wins</th><th>Draws</th><th>Losses</th>
</tr>
_END
}
?>
</table>
</body>

这似乎正在发挥作用

答案 4 :(得分:1)

试试这个:

    <body>

    <table class="altrowstable" id="alternatecolor">

    <?php
    if (!mysql_connect($db_host, $db_user, $db_pwd))
    {
    ?>
        <tr>
        <th>Failure</th><th>Player</th><th>Points</th><th>Played</th><th>Wins</th><th>Draws</th><th>Losses</th>
        </tr>
<?php
    }
    else
    {
?>
        <tr>
        <th>Success</th><th>Player</th><th>Points</th><th>Played</th><th>Wins</th><th>Draws</th><th>Losses</th>
        </tr>
     <?php } ?>

    </table>
    </body>