Php 如何在其他页面中显示选项值
我有一个下拉框,其中的某个名称在一个页面上被选中,并正确保存在数据库中。但是当我试图编辑页面时,我得到了除了下拉框(在“nothing selected”选项中)之外的所有值。我的代码需要做哪些更改? 设计规范:Php 如何在其他页面中显示选项值,php,codeigniter,Php,Codeigniter,我有一个下拉框,其中的某个名称在一个页面上被选中,并正确保存在数据库中。但是当我试图编辑页面时,我得到了除了下拉框(在“nothing selected”选项中)之外的所有值。我的代码需要做哪些更改? 设计规范: <option value="select"></option> <?php foreach ($PName as $row ): ?> <option value="<?=$row['pcode']?>" <?ph
<option value="select"></option>
<?php foreach ($PName as $row ): ?>
<option value="<?=$row['pcode']?>" <?php echo set_select('PName', $row['pcode']); ?>>
<?=$row['PName']?></option>
<?php endforeach ?>
如果您想获得所有值,而不考虑它们的选择,我建议使用一个隐藏字段:
<form ...>
<input type="hidden" name="pcodes" value="<?=implode(',',array_column($PName,'pcode'))?>"/>
<select>...
试试这个,这里的诀窍是你必须传递set_select()的第一个参数select标记的名称,在你的例子中它是'PName'
<select id="PName" name="PName">
<?php
foreach ($PName as $row ):
?>
<option value="<?=$row['pcode']?>" <?php echo set_select('PName', $row['pcode'], False); ?>>
<?=$row['PName']?>
</option>
<?php endforeach ?>
</select>
尝试:
---
假设表中的PName
字段具有产品名称且类型为String,则不应将其与$row['pcode']进行比较,后者假定具有不同的值。
<select id="PName" name="PName">
<?php
foreach ($PName as $row ):
?>
<option value="<?=$row['pcode']?>" <?php echo set_select('PName', $row['pcode'], False); ?>>
<?=$row['PName']?>
</option>
<?php endforeach ?>
</select>
<option value="">---</option>
<?php $selected = ($row['pcode'] == your selected data ) ? true : false; ?>
<?php foreach ($PName as $row ): ?>
<option value="<?=$row['pcode']?>" <?php set_select('PName', $row['pcode'], $selected); ?>>
<?=$row['PName']?>
</option>
<?php endforeach ?>