如何用php控制 select 中的选定值?

frank0927 2014-01-11 07:02:11
比如我有个select的表单

<select name="select_1">
<option value=""></option>
<option value="value_1">option_1</option>
<option value="value_2">option_2</option>
.....
<option value="value_n">option_n</option>
</select></td>

最后的n也许会很大,我的设计是用户表单提交后,存入mysql,然后用户可以再编辑,那么在编辑页面,这个单选表单必须显示为mysql中的值为选中状态。我已经把mysql中的值读出来了是 $value_select_1,那怎么用php控制这个select_1表单将value为$value_select_1的值选中呢?

刚学php不久,希望不吝赐教。
...全文
465 9 打赏 收藏 转发到动态 举报
写回复
用AI写文章
9 条回复
切换为时间正序
请发表友善的回复…
发表回复
frank0927 2014-03-11
  • 打赏
  • 举报
回复
引用 7 楼 fdipzone 的回复:

<?php
echo '<select name="select_1" id="select_1">';
echo '<option value=""></option>';
for($i=1; $i<=10; $i++){
    echo '<option value="value_'.$i.'">option_'.$i.'</option>';
}
echo '</select>';

$cur = 10;
echo '<script type="text/javascript">';
echo 'document.getElementById("select_1").value = "value_'.$cur.'";';
echo '</script>';
?>
这个好,不过可惜我已经结帖了不能再给你分了,但还是表示非常感谢
KingGold1208 2014-01-18
  • 打赏
  • 举报
回复
最好写成函数,提高代码的重复利用
傲雪星枫 2014-01-14
  • 打赏
  • 举报
回复

<?php
echo '<select name="select_1" id="select_1">';
echo '<option value=""></option>';
for($i=1; $i<=10; $i++){
    echo '<option value="value_'.$i.'">option_'.$i.'</option>';
}
echo '</select>';

$cur = 10;
echo '<script type="text/javascript">';
echo 'document.getElementById("select_1").value = "value_'.$cur.'";';
echo '</script>';
?>
frank0927 2014-01-11
  • 打赏
  • 举报
回复
引用 5 楼 u010200485 的回复:
[quote=引用 4 楼 PhpNewnew 的回复:]

$value_select_1=1;

$select_arr=array('value_1','value_2','value_3','value_4');

foreach ($select_arr as $value){
    if(intval(substr($value,-1,1))==$value_select_1)
        echo $value.' selected';
}
谢谢版主,可是为什么是-1到1呢?[/quote] 明白了,就取最后一位,感谢!
frank0927 2014-01-11
  • 打赏
  • 举报
回复
引用 4 楼 PhpNewnew 的回复:

$value_select_1=1;

$select_arr=array('value_1','value_2','value_3','value_4');

foreach ($select_arr as $value){
    if(intval(substr($value,-1,1))==$value_select_1)
        echo $value.' selected';
}
谢谢版主,可是为什么是-1到1呢?
黄袍披身 2014-01-11
  • 打赏
  • 举报
回复

$value_select_1=1;

$select_arr=array('value_1','value_2','value_3','value_4');

foreach ($select_arr as $value){
    if(intval(substr($value,-1,1))==$value_select_1)
        echo $value.' selected';
}
legendnan 2014-01-11
  • 打赏
  • 举报
回复
引用 1 楼 PhpNewnew 的回复:
数据库内的数据那就是已经保存的数据 输出的时候 取这个数值 1 然后 foreach 输出时判断这个数值是否相等,相等即是 selected.
妞妞
legendnan 2014-01-11
  • 打赏
  • 举报
回复
引用 1 楼 PhpNewnew 的回复:
数据库内的数据那就是已经保存的数据 输出的时候 取这个数值 1 然后 foreach 输出时判断这个数值是否相等,相等即是 selected.
版主 给我远程下巴 我那个环境还不行呢!!!!
黄袍披身 2014-01-11
  • 打赏
  • 举报
回复
数据库内的数据那就是已经保存的数据 输出的时候 取这个数值 1 然后 foreach 输出时判断这个数值是否相等,相等即是 selected.

21,886

社区成员

发帖
与我相关
我的任务
社区描述
从PHP安装配置,PHP入门,PHP基础到PHP应用
社区管理员
  • 基础编程社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧