我已经使用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>
但这不会显示任何值。谁能告诉我代码中有什么问题吗?谢谢你提前
您正在将字符串与数组进行比较。你应该像这样使用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 } } } ?>
更新代码