我有这样的代码:
if(isset($_POST['search']))
{
$res1=mysql_query("SELECT * FROM aircraft where acode = '$_POST[ac]'") or die(mysql_error());
while($row=mysql_fetch_array($res1))
{
$airc=$row['acode'];
$amode=$row['amodel'];
$stat=$row['status'];
$rem=$row['remarks'];
echo "<center><table><form name=\"frmMain\" method=\"post\">
<tr><td><font face=consolas><b>Aircraft Code:</b></font></td><td><input type=text name=arc value='$airc' readonly=readonly></td></tr>
<tr><td><font face=consolas><b>Aircraft Model:*</b></font></td><td><input type=text name=am value='$amode'></td></tr>
<tr><td><font face=consolas><b>Status:*</b></font></td><td><input type=text name=st value='$stat'></td></tr>
<tr><td><font face=consolas><b>Remarks:*</b></font></td><td><input type=text name=rm value='$rem'></td></tr></table>";
}
}
在提交“搜索”按钮,该代码显示,从飞机表中的数据。 用户被允许与(*)符号来更新数据。
由于状态都默认以下(可用,不可用),我改变了这种
<tr><td><font face=consolas><b>Status:*</b></font></td><td><input type=text name=st value='$stat'></td></tr>
这一点,
<tr><td><font face=consolas><b>Status:*</b></font></td><td><select name=st>
<option value=Available>Available</option>
<option value='Not Available'>Not Available</option>
</select></td></tr>
但我想它是依赖于默认值的下拉菜单,有$stat=$row['status'];
因为这是一个更新的形式。
如果检索的数据有它的状态“ 有空 ”,然后在下拉应该有它的默认值是“ 有空 ”。
我怎样才能做到这一点? 我试图<select name=status value='$stat'>
但它不工作。 任何帮助将不胜感激。 谢谢!
只是把selected="selected"
取决于你的选项$row['status']
<option selected="selected" value="available">Available</option>
写可用和不可用成阵列
$theArray = array("Available","Not Available");
循环中的数组:
<tr><td><font face=consolas><b>Status:*</b></font></td><td><select name=st>
<?php
foreach ($theArray as $key => $value) {
if ($value == $stat) {
echo('<option selected="selected" value='.$value.'>'.$value.'</option>');
} else {
echo('<option value='.$value.'>'.$value.'</option>');
}
}
?>
</select></td></tr>
并且在每个循环中,我们检查,如果阵列中的值,是相同的,因为它是在变量,如果是这样,我们把所选择的有
理解其中的逻辑?
<?php
$status = "navail";
?>
<select name="sel">
<option value="avail" <?php if($status == "avail") echo "SELECTED";?> > Avail </option>
<option value="navail" <?php if($status == "navail") echo "SELECTED";?> > Navail </option>
</select>
您可以使用下面的代码做到这一点:
<?php
$stat=$row['status'];
$selected_a = ($stat == 'Available') ? 'selected' : '' ;
$selected_b = ($stat == 'Not Available') ? 'selected' : '' ;
?>
<select name=st>
<option <?php echo $selected_a; ?> value='Available'>Available</option>
<option <?php echo $selected_b; ?> value='Not Available'>Not Available</option>
</select>
您可以使用额外的选项标签定义变量值和选择像马克说:
<select name="role" id="role">
<!-- This is default define value using php variable $r -->
<option selected="selected" value="<?php echo $r; ?>" disabled="disabled"><?php echo $r; ?></option>
<!-- Other options values -->
<option value="2">Option-2</option><option value="2">Option-2</option>
</select>
<select name=status>
<option value="available" <?php if($row['status']=="available") echo "selected=\"selected\""; ?>>Available</option>
<option value="unavailable" <?php if($row['status']=="unavailable") echo "selected=\"selected\""; ?>>Unvailable</option>
</select>
基本上回声选定=“选择了”根据所关注的域的值的选项。
声明中的选项等的阵列
$ ARR =阵列( “可用”=> “可用”, “不可用”=> “不可用”);
输入下拉这样
echo form_dropdown("st", $arr, set_value("st", (isset($row['status'];) ? $row['status']; : ""))
这是在像笨框架中常用的方法..我认为它在PHP核心工作太..
它的我第一次来这里,虽然我试图在PHP中使用的基本原则,不知道这可以帮助你,但如果你想抓住你的数据库上输入的违约值然后重新编辑,我建议你试试这个
<select name="st">
<?php if($row['status']=="Available"){?><option value="Available">Available</option><?php }?>
<?php if($row['status']=="Unavailable"){?><option value="Unavailable">Unavailable</option><?php }?>
</select>
假设在你的数据库中的列名是“状态”,给它一个尝试对我的作品