我按下搜索按钮时试着修复。从我的选项字段中选择的搜索仍然处于选中状态。但目前它会自动选择我表单中选项的第一个字段。
第一个是硬编码的,它可以工作。
<option value="HS" <?= ($nickval == 'HS' ? 'selected="selected' : '')?>>Homer Simpsons</option>
但后来我想从数据库中回显出选项值,因此它不是硬编码的。
<?php
while(db2_fetch_row($queryexe)) {
echo "<option value='$pin'>$fullname</option>";
}
?>
现在,当我想添加它所选择的我试图像这样解决它。
echo "<option value='$pin'($nickval == '$pin' ? 'selected='selected'' : '')>$fullname </option>";
这就是我的方式
$pin = db2_result($queryexe, 'P510PIN');
这就是我获得$ nickval的方式
$nickval = $_GET["int"];
有什么建议我做错了吗?对不起,如果我不清楚,但我已经尽力了
答案 0 :(得分:0)
除了引用语法高亮显示的错误......
您正尝试在字符串中执行PHP代码:
echo "<option value='$pin'($nickval == '$pin' ? 'selected='selected'' : '')>$fullname </option>";
变量插值是一回事,但字符串内的代码不会自动执行。它只是一个回显到页面的字符串。 (检查页面源并查看实际发送到浏览器的内容。)
将字符串与构建字符串的代码分开:
echo "<option value='$pin' " . ($nickval == $pin ? "selected='selected'" : "") . ">$fullname </option>";