我正在创建一个表单来更新sql表中的一些条目。
对于其中一个字段,我将在字段包含的值中选择一个“选择”。
理想情况下,我会有这样的事情:
<select id="source" name="source">
<option <?=$manual?>>MANUAL</option>
<option <?=$etsy?>>ETSY</option>
<option <?=$online?>>ONLINE</option>
</select>
但我想让它变得动态,所以,如果我有100个选项,我就不必编写100个变量,而只需加载相应的变量名称,并加上“selected”一词。
实现这一目标的最佳途径是什么?
答案 0 :(得分:2)
尝试这样的事情:
<select id="source" name="source">
<?php
$Attrib = 'selected="';
if ($order['source'] === 'value'){
$Attrib.= 'selected"';
}
else{
$Attrib .= 'false"';
}
?>
<option name="" <?=$Attrib;?>>NAMEHERE</option>
更不用说,您要将{$order['source']
)分配给value
,因此这将始终等于“值”
答案 1 :(得分:0)
可能是你想要做的事情
<option <?= ($order['source']==='optionname')?'selected':'' ?> > optionname </option>
将选项推送到某个阵列会更好。 哦,这就是你的意思。
我就是这样做的
<?php
$checkedoption = 'flytothemoon'; //the checked option
$options = array('opt1', 'opt2', 'opt3', 'flytothemoon');
foreach($options as $option):?>
<option <?= ($order['source']===$checkedoption)?'selected':'' ?> > $option </option>
<?php endforeach;?>