admin

在html select选项中显示来自sql的值不显示值

sql

我已经使用php和sql创建了一个html表单。该表单包含一个称为空格的字段,该字段是一个选择下拉列表。这些值来自我在php中声明的数组。如果数组中的值已经存在于数据库中,则不应显示。所以我做了以下代码:

<select class="form-control" id="space" name="space">

  <option value="--Select--">--Select--</option>

  <?php

$select=mysqli_query($con,"select * from clients where Spaces IS NOT NULL");

while($menu1=mysqli_fetch_array($select))

      {

$filled =$menu1['name'];

$valuez = array("C101","C102","C103","C104");

if ($filled != $valuez) {





      ?>

    <option value="<?php echo $valuez;?>">

      <?php echo $valuez;?>

    </option>

    <?php

      }}

      ?>

</select>

但这不会显示任何值。谁能告诉我代码中有什么问题吗?谢谢你提前


阅读 214

收藏
2021-06-07

共1个答案

admin

您正在将字符串与数组进行比较。你应该像这样使用in_array

 <select class="form-control" id="space" name="space">
   <option value="--Select--">--Select--</option>
 <?php
  $select=mysqli_query($con,"select * from clients where Space IS NOT NULL");
 while($menu1=mysqli_fetch_array($select))
  {
  $filled =$menu1['Space'];
 $valuez = array("C101","C102","C103","C104");
 foreach($valuez as $value){
    if($value != $filled){ 
    ?>
        <option value="<?php echo $value;?>">
          <?php echo $value;?>
        </option>
    <?php 
    }
 }
}
?>

更新代码

2021-06-07