【问题标题】:Data from database not appearing in table on HTML site来自数据库的数据未出现在 HTML 网站的表格中
【发布时间】:2017-09-12 11:20:38
【问题描述】:

我有一个表格,可以输入客人名单的联系人。在提交按钮被键入后,在同一页面本身上,我想检索数据并显示来宾列表。键入表格的数据在数据库中被接收。但它们没有显示在我的 HTML 网站上的屏幕上。

我的邀请顶部。HTML:

<?php 
include("guestlist.php");
include("guestlist_connect.php");
?>

invites.HTML:

<h2 >Invites & Guest List</h2> 
<table border="2">
  <thead>
    <tr>
      <th>First Name</th>
      <th>Last Name</th>
      <th>Contact</th>
      <th>Invitation</th>
    </tr>
  </thead>
  <tbody>
  <?php
    include("guestlist_connect.php");
    $result = mysql_query("SELECT * FROM guestlist");
    while( $row = mysql_fetch_assoc( $result ) ){
  ?>
      <tr>
        <td><? php echo $row["fname"]; ?></td>
        <td><? php echo $row["lname"]; ?></td>
        <td><? php echo $row["email"]; ?></td>
        <td><? php echo $row["contact"]; ?></td>
      </tr>
  <?php
  </tbody>
</table>
<?php  mysql_close($connector); ?>
</div><!--End Rightcontainer-->
</div>

_guestlist_connect.php:_

<?php
$servername = "localhost";
$username = "root";
$password = "";
$dbname = "registration";
$conn = mysqli_connect($servername, $username, $password, $dbname) or 
die("Connection failed: " . mysqli_connect_error());
if (mysqli_connect_errno()) {
  printf("Connect failed: %s\n", mysqli_connect_error());
  exit();
}
?>

【问题讨论】:

  • 尝试调试:var_dump($result);或 print_r($result);正在查询中。
  • &lt;? php 是错误的。它必须是&lt;?php。此外,mysql_* 函数已被弃用,PHP7 不再支持。所以切换到 PDO 或 mysqli_*
  • 只需要连接数据库一次
  • 每次在新代码中使用the mysql_ 数据库扩展this happens 时,它都已被弃用,并且已经存在多年,并且在 PHP7 中永远消失了。如果您只是学习 PHP,请花精力学习 PDOmysqli 数据库扩展和预处理语句。 Start here
  • 一段时间有其他条件?我会说...学习基础知识!代码比其他任何东西都更糟糕。再次从头开始阅读您正在编写的教程!

标签: php html mysql


【解决方案1】:

首先,你不需要重复 包括(“guestlist_connect.php”); 而且你忘了结束while循环

  <?php 
    include("guestlist.php");
     include("guestlist_connect.php"); 
    ?> 
    /*invites.HTML*/ 
    <h2 >Invites & Guest List</h2> 
    <table border="2"> 
    <thead> 
    <tr> 
    <th>First Name</th> 
    <th>Last Name</th> 
    <th>Contact</th> 
    <th>Invitation</th> 
    </tr> 
    </thead> <tbody> 
    <?php 
    $result = mysql_query("SELECT * FROM guestlist"); 
    while( $row = mysql_fetch_assoc( $result ) ){ ?> 
    <tr> 
    <td><? php echo $row["fname"]; ?></td> 
    <td><? php echo $row["lname"]; ?></td> 
    <td><? php echo $row["email"]; ?></td> 
    <td><? php echo $row["contact"]; ?></td> 
    </tr>
     <?php } ?> // you forgot to end a while loop
    </tbody> </table> 
    <?php mysql_close($connector); ?> 
    </div><!--End Rightcontainer--> </div>

【讨论】:

  • 你错过了很多 cmets 中提到的非常明显的问题,例如混合数据库库等。
  • 谢谢。我会修改错误。
猜你喜欢
  • 1970-01-01
  • 2020-12-19
  • 1970-01-01
  • 2019-04-14
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2016-07-23
  • 1970-01-01
相关资源
最近更新 更多