0

当谈到 HTML 时,我是一个完全的新手,如果我是一个傻瓜,我从来不需要做任何网页的东西,所以很抱歉。

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

这是我的代码的简化版本,如果连接到数据库成功,则表头中的第一列将显示“成功”,否则将显示“失败”。

<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。

4

5 回答 5

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>
于 2012-06-22T11:00:00.953 回答
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>';

这应该工作

于 2012-06-22T11:00:09.707 回答
1

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

任何一个

  1. 采用echo
  2. 放在?>HTML 之前和<?php>之后(即停止和开始 PHP 处理)
于 2012-06-22T11:00:04.170 回答
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>

这似乎工作

于 2012-06-22T11:01:29.920 回答
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>
于 2012-06-22T11:02:29.097 回答