[英]I have PHP form that is pulling information into a dropdown box from SQL Server. I want a particular item in the box as default selected
This code is pulling from DB table, and need it to display Information & Tecnology SVCS - 41515 as the default: 这段代码是从数据库表中提取的,需要它来显示Information&Tecnology SVCS-41515作为默认值:
echo '<option value=" ' . $row['department']. '"' . ($row['department'] == "INFORMATION & TECHNOLOGY SVCS -41515") ? ' selected="selected"' : "".'>'.$row['department']. '</option>';
This Code will give me the drop down but not a selected define item: echo ''.$row['department']. 该代码将为我提供下拉菜单,但没有给我提供选定的定义项:echo''。$ row ['department']。 ''; '';
Department: 部:
<?php
$sql = "SELECT department FROM Department";
$query = sqlsrv_query($conn,$sql);
$query_display = sqlsrv_query($conn,$sql);
while($row=sqlsrv_fetch_array($query_display,SQLSRV_FETCH_ASSOC))
{
//echo '<option value=" '. $row['department'].' ">'.$row['department']. '</option>';
echo '<option value=" ' . $row['department']. '"' . ($row['department'] == "INFORMATION & TECHNOLOGY SVCS -41515") ? ' selected="selected"' : "".'>'.$row['department']. '</option>';
continue;
}
?>
</select>
</td>
Put parentheses around the conditional expression, because operator precedence is not what you're expecting. 在条件表达式两边加上括号,因为运算符的优先级不是您所期望的。
echo '<option value=" ' . $row['department']. '"' . (($row['department'] == "INFORMATION & TECHNOLOGY SVCS -41515") ? ' selected="selected"' : "").'>'.$row['department']. '</option>';
To make it easier to read, I usually use a separate variable: 为了便于阅读,我通常使用一个单独的变量:
if ($row['department'] == "INFORMATION & TECHNOLOGY SVCS -41515") {
$selected = ' selected="selected"';
} else {
$selected = "";
}
echo '<option value=" ' . $row['department']. '"' . $selected .'>'.$row['department']. '</option>';
($row['department'] == "INFORMATION & TECHNOLOGY SVCS -41515")
There was a spacing issue. 存在间距问题。 Needed to be 需要是
($row['department'] == "INFORMATION & TECHNOLOGY SVCS - 41515")
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.