使用PHP设置所选选项值
我在PHP中使用下拉菜单。如何设置POST方法后的选定值。我在php文件中创建选择框。下面我提到了示例代码使用PHP设置所选选项值,php,codeigniter,zend-framework,Php,Codeigniter,Zend Framework,我在PHP中使用下拉菜单。如何设置POST方法后的选定值。我在php文件中创建选择框。下面我提到了示例代码 <?php $postval = $_POST['dbfld']; $opvar = "<select name='".$name."' id='".$Id."'><option value=''> Select ART_ID</option>"; while($row = mysqli_fetch_array($resul
<?php
$postval = $_POST['dbfld'];
$opvar = "<select name='".$name."' id='".$Id."'><option value=''> Select ART_ID</option>";
while($row = mysqli_fetch_array($result_sql,MYSQLI_ASSOC)) {
$opvar .= "<option value='".$row[$dbfld]."'>".$row[$dbfld]."</option>";
}
$opvar .= "</select>";
?>
试试这个:
<?php
$postval = $_POST['dbfld'];
$opvar = "<select name='".$name."' id='".$Id."'><option value=''> Select ART_ID</option>";
while($row = mysqli_fetch_array($result_sql,MYSQLI_ASSOC)) {
$selected = $postval == $row[$dbfld] ? ' selected="selected"' : '';
$opvar .= "<option value='".$row[$dbfld]."'".$selected.">".$row[$dbfld]."</option>";
}
$opvar .= "</select>";
?>
为了完整性起见,您还可以使用一个简单的if子句来实现这一点
if($postval == $row[$dbfld]){
$opvar .= "<option value='".$row[$dbfld]."' selected='selected'>".$row[$dbfld]."</option>";
}else{
$opvar .= "<option value='".$row[$dbfld]."'>".$row[$dbfld]."</option>";
}
if($postval==$row[$dbfld]){
$opvar.=''.$row[$dbfld]。'';
}否则{
$opvar.=''.$row[$dbfld]。'';
}
虽然这确实为一些简单的功能添加了一段代码,但它将允许您在if子句中执行更广泛的操作,而无需添加更多的代码。您可以使用
元素的属性selected=“selected”
使用三元运算符最小化代码
<?php
$postval = $_POST['dbfld'];
$opvar = "<select name='".$name."' id='".$Id."'><option value=''> Select ART_ID</option>";
while($row = mysqli_fetch_array($result_sql,MYSQLI_ASSOC)) {
$selected = ($row[$dbfld] == $postval) ? 'selected="selected"' : '';
$opvar .= "<option value='".$row[$dbfld]."'" . $selected . ">".$row[$dbfld]."</option>";
}
$opvar .= "</select>";
?>