我是php开发的新手,我正在努力编写一个代码来检查条件以在下拉列表中设置所选值
while ($row = $result_departments->fetch_assoc()) {
$dept_info = array(
'name' => $row['dpt_name'],
'id' => $row['dpt_id']
);
$departments.= '<option value="'.$dept_info['name'].'" name="'.$dept_info['name'].'">'.$dept_info['name'].'</option>';
}
return $departments;
在填充$部门时,我想添加条件if $dept_info['name']=="XYZ" selected=="selected"
怎么做?我无法写出正确的语法。
答案 0 :(得分:1)
你可以用简单的if:
来做$departments.= '<option value="'.$dept_info['name'].'" name="'.$dept_info['name'].'"';
if ($dept_info['name']=="XYZ")
$department.= ' selected="selected"';
$department .='>'.$dept_info['name'].'</option>';
第二种方式是三元运算符:
$departments.= '<option value="'.$dept_info['name'].'" name="'.$dept_info['name'].'"';
$department.= ($dept_info['name']=="XYZ"?' selected="selected"':null);
$department .='>'.$dept_info['name'].'</option>';
答案 1 :(得分:0)
试试这个:
while ($row = $result_departments->fetch_assoc()) {
$dept_info = array(
'name' => $row['dpt_name'],
'id' => $row['dpt_id']
);
$select_it = ($dept_info['name']=="XYZ") ? 'selected' : '';
$departments.= '<option $select_it value="'.$dept_info['name'].'" name="'.$dept_info['name'].'">'.$dept_info['name'].'</option>';
}
return $departments;
答案 2 :(得分:0)
一个简单的if / else应该可以解决问题。
while ($row = $result_departments->fetch_assoc()) {
$dept_info = array(
'name' => $row['dpt_name'],
'id' => $row['dpt_id']
);
if(dept_info['name'] == "XYZ") {
$departments.= '<option value="'.$dept_info['name'].'" name="'.$dept_info['name'].'" selected="selected">'.$dept_info['name'].'</option>';
} else {
$departments.= '<option value="'.$dept_info['name'].'" name="'.$dept_info['name'].'">'.$dept_info['name'].'</option>';
}
}
return $departments;