这似乎是一个解决的问题,但我已经通过对此进行了几个小时的研究,但是我尝试的所有解决方案都不适用于我。请帮助我我 内爆和疲倦...我只想保留提交表单或发生错误后检查的选中的人。 这是我的问题。PHP提交后如何保持复选框阵列检查
<input name="toppings" type="checkbox" value="pepperoni" id="top1"><label
for="top1">Pepperoni</label>
<input name="toppings" type="checkbox" value="bacon" id="top2"><label
for="top2">Canadian Bacon</label>
<input name="toppings" type="checkbox" value="sausage" id="top3"><label
for="top3">Sausage</label>
<input name="toppings" type="checkbox" value="mushrooms" id="top4"><label
for="top4">Mushrooms</label>
<input name="toppings" type="checkbox" value="pineapple" id="top5"><label
for="top5">Pineapple</label>
<input name="toppings" type="checkbox" value="peppers" id="top6"><label
for="top6">Peppers</label>
,这就是我想
$toppingArr=array();
if(!empty($_GET["toppings"]))
{
foreach($_GET['toppings'] as $tops)
{
array_push($toppingArr,$tops);
}
}
<input name="toppings[]" type="checkbox" value="pepperoni" id="top1"
<?= (in_array("pepperoni", $toppingArr)) ? 'checked' : ''; ?>>
<label for="top1">Pepperoni</label>
<input name="toppings[]" type="checkbox" value="bacon" id="top2"
<?= (in_array("bacon", $toppingArr)) ? 'checked' : ''; ?>>
<label for="top2">Canadian Bacon</label>
<input name="toppings[]" type="checkbox" value="sausage" id="top3">
<?= (in_array("sausage", $toppingArr)) ? 'checked' : ''; ?>>
<label for="top3">Sausage</label>
<input name="toppings[]" type="checkbox" value="mushrooms" id="top4"
<?= (in_array("mushrooms", $toppingArr)) ? 'checked' : ''; ?>>
<label for="top4">Mushrooms</label>
<input name="toppings[]" type="checkbox" value="pineapple" id="top5"
<?= (in_array("pineapple", $toppingArr)) ? 'checked' : ''; ?>>
<label for="top5">Pineapple</label>
<input name="toppings[]" type="checkbox" value="peppers" id="top6"
<?= (in_array("peppers", $toppingArr)) ? 'checked' : ''; ?>>
<label for="top6">Peppers</label>
我的解决方案是如果复选框不为空创建一个cookie然后读取cookie如果存在复选框 – Pedram