我需要一些帮助来解决我的问题。我做了几次调查但都没有成功。我有一个带有IsContrib列的表,它是BOOLEAN。我想用我的复选框显示此列。如果IsContrib = 1 ==>检查其他IsContrib = 0未选中。
在这里,我是怎么做的,但我收到一条错误说:syntax error, unexpected ';'
echo "...
<td> <input name='checkboxNContrib[]' type='checkbox' id='checkboxNContrib[]' ".$rowNContribRunDis["IsNContrib"]==TRUE ? "checked='checked'"." value='".$rowNContribRunDis["IdVariantNContrib"]."'/> </td></tr>";
这里是整个回声:
while($rowNContribRunDis = mysqli_fetch_assoc($PerformNContribSELECT)){
$id = $rowNContribRunDis["IdVariantNContrib"];
echo "<tr>
<td> ".$rowNContribRunDis["ID"]." </td><td> ".$rowNContribRunDis["Reference"]." </td>
<td><textarea name='ResultHRM[$id]' id='ResultHRM[]' cols='30' rows='1'>".$rowNContribRunDis['ResultHRM']."</textarea></td>
<td><textarea name='Commentaires[$id]' id='Commentaires[]' cols='60' rows='1'>".$rowNContribRunDis['Commentaires']."</textarea></td>
<td> <input name='checkboxNContrib[]' type='checkbox' id='checkboxNContrib[]' ".$rowNContribRunDis["IsNContrib"]==TRUE ? "checked='checked'"." value='".$rowNContribRunDis["IdVariantNContrib"]."'/> </td></tr>";
答案 0 :(得分:1)
添加冒号(:)
".($rowNContribRunDis["IsNContrib"]==TRUE ? "checked='checked'" : "")."
答案 1 :(得分:0)
混合HTML和PHP的坏主意。
我看到了问题。问题在于if语句短,托盘放在括号示例中:
echo "Lorum ipsum" .($some == true ? 'yes' : '') . "adasda";
始终必须是其他声明
答案 2 :(得分:0)
您的代码非常难看,您应该重写它!
在字符串连接?:
中使用三元运算符"" . ""
,您应该使用括号,例如。 "..." . (true ? "yes" : "no") . "..."
并使用true
和false
的较低字符串。
echo "<tr>
<td> " . $rowNContribRunDis["ID"] . " </td>
<td> " . $rowNContribRunDis["Reference"] . " </td>
<td><textarea name='ResultHRM[$id]' id='ResultHRM[]' cols='30' rows='1'>" . $rowNContribRunDis['ResultHRM'] . "</textarea></td>
<td><textarea name='Commentaires[$id]' id='Commentaires[]' cols='60' rows='1'>" . $rowNContribRunDis['Commentaires'] . "</textarea></td>
<td> <input name='checkboxNContrib[]' type='checkbox' id='checkboxNContrib[]' " . ($rowNContribRunDis["IsNContrib"] == true ? "checked='checked'" : "") . " value='" . $rowNContribRunDis["IdVariantNContrib"] . "'/> </td></tr>";