У меня есть набор флажков name = "box []". Через PHP я удостоверяюсь, что они проверены после того, как они были отправлены, эхом «checked =« checked », если они были отмечены при отправке события.
Теперь, если я проверю третий флажок, значение переходит к первому флажку после отправки, так как массив был пустым до третьего флажка. То же самое, если я проверю флажок 2 и 3, они спрыгнут до 1-го и 2-го после отправки. Это код, который я использую:
<form method="post"> <input type="checkbox" name="box[]" value="true" <?php if ($box[0] == true) echo "checked='checked'"; ?>><br> <input type="checkbox" name="box[]" value="true" <?php if ($box[1] == true) echo "checked='checked'"; ?>><br> <input type="checkbox" name="box[]" value="true" <?php if ($box[2] == true) echo "checked='checked'"; ?>><br> <p> <input type="submit" value="Submit"> </form>
Попробуйте: http://experiencerapanui.com/selecttest.php
Могу ли я установить флажки для заполнения массива значением «ложь» или что-то еще, если флажок не установлен? В каком направлении мне идти?
** * *** EDIT ** * ** *
Благодаря phant0m мне удалось найти решение:
<form method="post"> <input type="checkbox" name="box[]" value="1" <?php if (in_array("1", $box)) echo "checked='checked'"; ?>><br> <input type="checkbox" name="box[]" value="2" <?php if (in_array("2", $box)) echo "checked='checked'"; ?>><br> <input type="checkbox" name="box[]" value="3" <?php if (in_array("3", $box)) echo "checked='checked'"; ?>><br> <p> <input type="submit" value="Submit"> </form>
Поместив уникальные значения для флажков, тогда, если я найду значение в массиве $ box [], поле будет помечено как отмечено.