我在第二行的语法上遇到了麻烦,特别是,相对于语句的其余部分,找出$row[type]
周围的正确引号。 谢谢!
while ($row2 = mysqli_fetch_assoc($type_result)) {
$row["done"] == "checked" ? $selected= " selected = ""{$row['type']}"" : $selected="";
$type_options .= sprintf("<option value='%s' ".$selected.">%s</option>".PHP_EOL, $row2["type_name"], $row2["type_name"]);
}
?>
$row["done"] == "checked" ? $selected= " selected='"{$row['type']}'"" : $selected="";
这应该可以
虽然您的解决方案使用较少的行,但我发现很难阅读(和调试!...这是一个替代方案:
$selected="";
if($row["done"] == "checked") {
$selected = 'selected = "'.$row["type"].'"';
}
//ETC ETC
这里没有语法错误:
while ($row2 = mysqli_fetch_assoc($type_result)) {
$row["done"] == "checked" ? $selected = " selected = ".$row["type"]."" : $selected="";
$type_options .= sprintf("<option value='%s'".$selected.">%s</option>".PHP_EOL.", ".$row2['type_name'].", ".$row2['type_name']);
}
它应该是这样的:
$selected = ($row["done"] == "checked") ? " selected='"{$row['type']}'"" : "";