php下拉框填充数据库,php-从数据库填充下拉列表

我正在使用此代码从数据库重新填充下拉列表:

$city_id = 15;

while($row = mysql_fetch_assoc($result)) {

$selected = ($row['city_id'] == $city_id) ? 'selected="selected" ' : NULL;

echo '"'.$row['city_name'].'"\n';

}

它的工作就像一种魅力,但我的问题是,它们是否是更优雅的解决方案?

解决方法:

我总是使用一个函数,因为选择框是我最终要创建的东西…

function select($name, $default, $values, $style='', $param='') {

$html = '';

foreach($values as $i => $data) {

if (isset($data['noFormat'])) {

$html .= '

(isset($data['style']) ? ' style="'.$data['style'].'" ' : '').'>'.$data['text'].'

';

} else {

$html .= '

(isset($data['style']) ? ' style="'.$data['style'].'" ' : '').'>'.htmlentities($data['text']).'

';

}

}

$html .= '';

return $html;

}

然后遍历您的查询以构建如下数组:

$default[] = array('value' => '0', 'text' => 'Select a City...');

while($row = mysql_fetch_assoc($result)) {

$list[] = array('value' => $row['city_id'], 'text' => $row['city_name']);

}

$list = array_merge($default,$list);

最后是创建HTML的示例:

select('select','form_el_name',$list['0'],$list,'font-size:12px;','onChange="document.forms[0].submit();"');

希望能帮助到你!

标签:forms,php,database

来源: https://codeday.me/bug/20191105/1998106.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值