使用MYSQLI填充下拉框 - PHP

时间:2016-11-20 05:18:15

标签: php mysql mysqli

嘿伙计我在使用MYSQLI填充下拉框时遇到一些问题。 我到目前为止的代码是:

FileInputStream

不幸的是,下拉框保持空白。 我可能错过了一些简单的事情。

2 个答案:

答案 0 :(得分:1)

问题是当我将require调用到数据库连接时: 这是固定的脚本,移动"要求"到第二个PHP块。

<?php
session_start();
if (!isset($_SESSION['myusername'])){
    header("location:index.php");
    exit;
}
include_once './includes/checkperm.php';
$permlevel = check_perm($_SESSION['myusername']);
if ($permlevel < "90" ) {
    header("location:permtolow.php");
    exit;
}
?>


<?php
require($_SERVER['DOCUMENT_ROOT'].'/../dbcon.php');
$queryusers = "SELECT * FROM finance";
$query = mysqli_query($con, $queryusers) or die (mysqli_error());
echo '<div class="label">Select Name:</div>';
echo '<select username="username">';
echo '<option value = "">---Select---</option>';
while ( $d=mysqli_fetch_array($query)) {
echo "<option value='{".$d['username']."}'>".$d['username']."</option>";
}
echo '</select>';
?>

答案 1 :(得分:0)

您的代码存在问题 如果你将它简化为最低限度

  1 #!/usr/bin/php
  2 <?php
  3 $ar=array('one','two','three');
  4 foreach ($ar as $val){
  5 echo "<option value='{".$val."}'></option>";
  6 printf("\n");
  7 }
  8 ?>

然后运行它 - 你将最终得到

[root@sshbuild ~]# ./phptest.php
<option value='{one}'></option>
<option value='{two}'></option>
<option value='{three}'></option>

看到问题?
您在标签之间缺少值 输出应该是这样的

[root@sshbuild ~]# ./phptest.php
<option value='{one}'>one</option>
<option value='{two}'>two</option>
<option value='{three}'>three</option>

所以你需要做的就是这个

echo "<option value='{".$d['username']."}'>".$d['username']."</option>";