-2

我在第二行的语法上遇到了问题,特别是在找出$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"]);
}
?>
4

4 回答 4

0

应该是这样的:

$selected = ($row["done"] == "checked") ? " selected=\"{$row['type']}\"" : "";
于 2013-09-25T18:01:13.337 回答
0
$row["done"] == "checked" ? $selected= " selected=\"{$row['type']}\"" : $selected="";

那应该做

于 2013-09-25T17:45:45.840 回答
0

虽然您的解决方案使用较少的行,但我发现它很难阅读(和调试!)......这是一个替代方案:

$selected="";
if($row["done"] == "checked") {
    $selected = 'selected = "'.$row["type"].'"';
}
//ETC ETC
于 2013-09-25T17:49:33.947 回答
0

这是没有语法错误的:

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']);
}
于 2013-09-25T17:54:44.467 回答