我在使用三元运算符吗?
Am I using the ternary operator?
这是我的代码:
echo "<option value=".$crew_rank_id.".(($crew_rank_id == $crew_rank) ? "selected" : "").>".$crew_rank_table."</option>";
我想做的是从 echo
中的数据库中回显选定的值
试试这个,
检查 $crew_rank_id == $crew_rank
存储在变量中并在 <option>
标签
中分配给它
$selected = "";
if($crew_rank_id == $crew_rank)
{
$selected = "selected";
}
echo "<option value=".$crew_rank_id.".$selected.>".$crew_rank_table."</option>";
您在多处缺少双引号。第一个得到的值和 "selected" 是一个单词,没有空格。选项标签结束前的第二个。
echo "<option value=".$crew_rank_id." ".(($crew_rank_id == $crew_rank) ? "selected" : "").">".$crew_rank_table."</option>";
您在字符串中混合了 PHP 语句和 PHP 变量,并且缺少一些引号和 HTML-标签。
这应该有效:
echo "<option value='{$crew_rank_id}' ". (($crew_rank_id == $crew_rank) ? "selected" : "") . ">{$crew_rank_table}</option>";
这是我的代码:
echo "<option value=".$crew_rank_id.".(($crew_rank_id == $crew_rank) ? "selected" : "").>".$crew_rank_table."</option>";
我想做的是从 echo
试试这个,
检查 $crew_rank_id == $crew_rank
存储在变量中并在 <option>
标签
$selected = "";
if($crew_rank_id == $crew_rank)
{
$selected = "selected";
}
echo "<option value=".$crew_rank_id.".$selected.>".$crew_rank_table."</option>";
您在多处缺少双引号。第一个得到的值和 "selected" 是一个单词,没有空格。选项标签结束前的第二个。
echo "<option value=".$crew_rank_id." ".(($crew_rank_id == $crew_rank) ? "selected" : "").">".$crew_rank_table."</option>";
您在字符串中混合了 PHP 语句和 PHP 变量,并且缺少一些引号和 HTML-标签。
这应该有效:
echo "<option value='{$crew_rank_id}' ". (($crew_rank_id == $crew_rank) ? "selected" : "") . ">{$crew_rank_table}</option>";