繁体   English   中英

PHP调用后未显示后续HTML

[英]Subsequent HTML not being displayed after PHP call

我对PHP编程比较陌生。 我正在构建一个小练习应用程序(待办事项列表),以供练习之用。 我正在努力充实UI并测试页面上数据库中信息的显示方式。

用户登录时,将向他们显示所有已保存项目的表。

表列表项

  <div class="container">
    <table class="table">
      <tr>
        <th>Completed</th>
        <th>Description</th>
        <th>Actions</th>
      </tr>
      <tr>
        <td colspan="3"></td>
      </tr>
      <?php
      $document_get = mysql_query("SELECT * FROM todolist WHERE user_id='$user_id' ORDER BY id DESC");
      while($match_value = mysql_fetch_array($document_get)) {
      ?>
      <tr>
        <td>
          Hi
        </td>
      </tr>
    </table>
    <?php
    }
    ?>
  </div>

php调用以显示列表项

      <?php
      $document_get = mysql_query("SELECT * FROM todolist WHERE user_id='$user_id' ORDER BY id DESC");
      while($match_value = mysql_fetch_array($document_get)) {
      ?>

由于某些原因,此PHP请求下的所有内容均未显示。 我看过其他人提到相同内容的帖子,但没有看到与我的问题相符的具体内容。

mysql_fetch_array返回一个数组。 while语句的结构不会获得您想要的结果。 while循环将永远永远是正确的,因为while条件没有任何变化。

这应该使效果更接近您要查找的内容:

$document_get = mysql_query("SELECT * FROM todolist WHERE user_id='$user_id' ORDER BY id DESC");
$match_value = mysql_fetch_array($document_get);
foreach ($match_value as $value){
    //Do something
}

附带说明-我强烈建议您使用PDO,不要将php与html放在一行。 此处的教程: https//phpdelusions.net/pdo

如果您使用PDO,则循环看起来像这样:

while($row = $st->fetch(PDO::FETCH_ASSOC)){
    //Do something
}
enter code here  <?php
  $document_get = mysql_query("SELECT * FROM todolist WHERE user_id='$user_id' ORDER BY id DESC");
  while($match_value = mysql_fetch_array($document_get)) {
  echo "
  <tr>
    <td>
      Hi
    </td>
  </tr>

“;

}
echo    " </table>";
?>

在PHP中使用echo做整个事情,以显示表elemts和Hi。 删除多余的php标签,以便循环并回显所有php。 还请查看注释中提到的安全性问题。 顺便说一句,在阅读问题下方的注释后,我将表结束标记移到了循环之外。

尝试从以下方式更改查询:

$document_get = mysql_query("SELECT * FROM todolist WHERE user_id='$user_id' ORDER BY id DESC");

$document_get = mysql_query("SELECT * FROM todolist WHERE user_id='".$user_id."' ORDER BY id DESC");

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM