我需要从db中选择值到选择框中.拜托,告诉我该怎么做.这是代码.注意:'选项'值取决于类别.
<?php
$sql = "select * from mine where username = '$user' ";
$res = mysql_query($sql);
while($list = mysql_fetch_assoc($res)){
$category = $list['category'];
$username = $list['username'];
$options = $list['options'];
?>
<input type="text" name="category" value="<?php echo '$category' ?>" readonly="readonly" />
<select name="course">
<option value="0">Please Select Option</option>
<option value="PHP">PHP</option>
<option value="ASP">ASP</option>
</select>
<?php
}
?>
Run Code Online (Sandbox Code Playgroud)
rak*_*ain 26
我认为您正在寻找以下代码更改:
<select name="course">
<option value="0">Please Select Option</option>
<option value="PHP" <?php if($options=="PHP") echo 'selected="selected"'; ?> >PHP</option>
<option value="ASP" <?php if($options=="ASP") echo 'selected="selected"'; ?> >ASP</option>
</select>
Run Code Online (Sandbox Code Playgroud)
小智 7
我能想到的最简单的方法如下:
PHP
<?php
$selection=array('PHP','ASP');
echo '<select>
<option value="0">Please Select Option</option>';
foreach($selection as $selection){
$selected=($options == $selection)? "selected" : "";
echo '<option '.$selected.' value="'.$selection.'">'.$selection.'</option>';
}
echo '</select>';
Run Code Online (Sandbox Code Playgroud)
代码基本上将所有选项放在一个在foreach循环中调用的数组中.循环检查你的$ options变量是否与它所在的当前选择匹配,如果匹配则选择$ selected =如果不匹配则将其设置为空白.最后返回包含数组中选择的选项标记,如果该特定选择等于$ options变量,则将其设置为所选选项.
例如..并且请下次使用mysqli(),因为不推荐使用mysql().
<?php
$select="select * from tbl_assign where id='".$_GET['uid']."'";
$q=mysql_query($select) or die($select);
$row=mysql_fetch_array($q);
?>
<select name="sclient" id="sclient" class="reginput"/>
<option value="">Select Client</option>
<?php $s="select * from tbl_new_user where type='client'";
$q=mysql_query($s) or die($s);
while($rw=mysql_fetch_array($q))
{ ?>
<option value="<?php echo $rw['login_name']; ?>"<?php if($row['clientname']==$rw['login_name']) echo 'selected="selected"'; ?>><?php echo $rw['login_name']; ?></option>
<?php } ?>
</select>
Run Code Online (Sandbox Code Playgroud)