我在 PHP/HTML 中更正这些双引号和单引号的语法时遇到问题


I am having trouble correcting the syntax of these double and single quotes in PHP/HTML

我在第二行的语法上遇到了麻烦,特别是,相对于语句的其余部分,找出$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']}'"" : "";