为了账号安全,请及时绑定邮箱和手机立即绑定

我如何将从 mysql 数据库获取的数组中的选定属性赋予给项目

我如何将从 mysql 数据库获取的数组中的选定属性赋予给项目

PHP
当年话下 2024-01-19 20:51:49
我有一个选择下拉列表,我希望有一个基于 SQL 数据的预定义选择选项。我的sql调用:$sel = 'SELECT threechar_currency_code, currency_name FROM currencies';$RS = doQuery($sel);while($row = fetchAssoc($RS)){   //The else is working, the code in the if() is what i wish to get working/* if ($row['threechar_currency_code'] === $selected_currency){    $currencies[] = array(        'selected' => true,        'currency_code' => $row['threechar_currency_code'],        'currency_name' => $row['currency_name']    );}  else { */    $currencies[] = array(        'currency_code' => $row['threechar_currency_code'],        'currency_name' => $row['currency_name']    );// }}我的选择:<select class="mdb-select md-form" id="currency" name="currency" placeholder="Select currency" value=""                                            required searchable="Search here..">                                            <option value="none" disabled selected="selected">Currency</option>                                            <?php                                            foreach ($currencies as $c){                                                echo '<option value="'.$c['currency_code'].'">'.$c['currency_name'].'</option>';                                            }                                            ?>                                        </select>要说明的是,仅使用 else{} 就可以很好地填充所有内容,我只是希望有一个预选选项(如果它与预选值匹配)。提前致谢
查看完整描述

2 回答

?
墨色风雨

TA贡献1853条经验 获得超6个赞

现在,您对默认选项进行了硬编码。删除它并在循环中执行五线谱foreach(使用您的if循环)。



查看完整回答
反对 回复 2024-01-19
?
互换的青春

TA贡献1797条经验 获得超6个赞

您需要selected在循环中指定该属性(如果存在)


echo '<option value="'.$c['currency_code'].'" ' . (isset($c['selected']) ? "selected=true" : "") . '> . $c['currency_name']</option>

我还会简化你的while循环。您每次都需要两个主要属性,因此始终创建它们,并且仅在需要时添加选定的属性,例如


while($row = fetchAssoc($RS)){


   $currency = [

     'currency_code' => $row['threechar_currency_code'],

     'currency_name' => $row['currency_name']

   ]

   if($row['threechar_currency_code'] === $selected_currency) {

     $currency['selected'] = true;

   }

   $currencies[] = $currency;     

}


查看完整回答
反对 回复 2024-01-19
  • 2 回答
  • 0 关注
  • 100 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信