我在php中有个人资料页面供用户设置他的个人资料。个人资料页面提示用户设置性别。这是代码:
<form action='database.php' method=post>
<select name="myvalue">
<option value=" ">--select--</option>
<option value="male">male</option>
<option value="female">female</option>
</select>
<input type=submit>
</form>
用户选择性别后,以下代码获取选择
$myvalue=$_POST['myvalue'];
然后使用函数存储数据库中的值。
下次用户将访问其个人资料页面时,我希望下拉列表显示之前选择的值。例如,假设用户在第一次创建他的个人资料时选择性别为“男性”。如果他再次访问个人资料页面,则下拉列表必须自动为选定值,值为“男性”。
答案 0 :(得分:0)
要将选项字段设置为默认选项,您可以使用selected
关键字
<select name="myvalue">
<option value=" ">--select--</option>
<option value="male" selected>male</option>
<option value="female">female</option>
</select>
如果您使用xml文档类型,则必须使用
<select name="myvalue">
<option value=" ">--select--</option>
<option value="male" selected="selected">male</option>
<option value="female">female</option>
</select>
由您为该用户从cookie或数据库加载值,然后执行检查以将“选定”值回显到该选项字段
答案 1 :(得分:0)
试试这个:
<?php
$gender = /// fetch value from database
?>
<form action='database.php' method=post>
<select name="myvalue">
<option value=" ">--select--</option>
<option value="male" <?php if($gender == "male"){?> selected="selected" <?php }?>>male</option>
<option value="female" <?php if($gender == "female"){?> selected="selected" <?php }?>>female</option>
</select>
<input type=submit>
</form>
答案 2 :(得分:0)
做这样的验证。
$val = value_from db;
if($val == "male") {
echo '<option value="male" selected="selected">male</option>';
} elseif($val == "female") {
echo '<option value="female" selected="selected">female</option>';
}
答案 3 :(得分:0)
只需检查值并在html中显示selected =“selected”
<?php
$value = $_POST['myvalue'];
?>
<form action='database.php' method=post>
<select name="myvalue">
<option value=" " <?php echo $value==' ' ? 'selected="selected"' : ''; ?> >--select--</option>
<option value="male" <?php echo $value=='male' ? 'selected="selected"' : ''; ?> >male</option>
<option value="female" <?php echo $value=='female' ? 'selected="selected"' : ''; ?> >female</option>
</select>
<input type=submit>
</form>
答案 4 :(得分:0)
这样的事情:
<form action='database.php' method=post>
<select name="myvalue">
<option value=" ">--select--</option>
<option value="male" <?php echo $gender=="male"?"selected":""; ?>>male</option>
<option value="female" <?php echo $gender=="female"?"selected":""; ?>>female</option>
</select>
<input type=submit>
</form>
但更好的方法是使用一个像样的模板系统。
答案 5 :(得分:0)
将所选属性添加到选项
<select name="myvalue">
<option value=" ">--select--</option>
<?php
$selected = 'selected="selected" ';
foreach(array('male', 'female') as $v){
echo '<option '.(($v==$dbgender)? $selected : '').'value="'.$v.'">'.$v.'</option>';
}
?>
</select>
$ dbgender是为该用户存储的值。