如何从数据库中在单个表单中显示数据

wfsdck30  于 2021-10-10  发布在  Java
关注(0)|答案(3)|浏览(418)

我试图在单个输入表单中显示来自数据库的数据。假设我有3行,其中列名为 name .

  1. <input value"<?php echo $row['name']; ?>">

以下是我获取行的方式:

  1. <?php while($row = mysqli_fetch_array($result)) { ?> <input value="<?php echo $row['username']; ?>"> <?php } mysqli_close($con); ?>

那么,如何以一种输入形式而不是三种形式显示数据呢?如所附图片所示。

uplii1fm

uplii1fm1#

进行此操作时:

  1. <?php while($row = mysqli_fetch_array($result)) { ?> <input value="<?php echo $row['username']; ?>"> <?php } mysqli_close($con); ?>

实际上,您创建的输入行与循环迭代的输入行一样多。相反,您应该这样做:

  1. <?php $userNames = []; while($row = mysqli_fetch_array($result)) {$userNames[] = $row['username'];} mysqli_close($con); ?>

现在我们有了一个漂亮的$usernames数组,我们将其内爆并放入输入行:

  1. <?php $userNames = implode(",",$userNames);?>
  2. <input value="<?php echo $userNames; ?>">

不要使用while循环来创建窗体本身。。。使用它们来设置数据。。。。
在创建表或选择表单数据时,如果您了解循环内部的情况,那么使用循环是一个好主意:)
有更多的方法可以做到这一点。。。

展开查看全部
tct7dpnv

tct7dpnv2#

如果我理解正确,这就是你想要得到的。

  1. <?php
  2. $val = '';
  3. while($row = $dbQuery->fetch(PDO::FETCH_ASSOC))
  4. {
  5. $val .= ((!empty($val) ? ', ': '' ) . $row['name'];
  6. }
  7. ?>
  8. <input value="<?php echo htmlspecialchars($val, ENT_QUOTES); ?>" />
tquggr8v

tquggr8v3#

如果数组变量中存储了单独的行 $row .
您可以在输入中添加这些字段,如下所示:

  1. <?php $row = mysqli_fetch_array($result); ?>
  2. <?php mysqli_close($con); ?>
  3. <input value="<?php echo implode(", ", $row); ?>">

相关问题