У меня есть форма HTML:Почему состояние флажка не всегда передается скрипту PHP?
<form action='process.php' method='post'>
<input type='checkbox' name='check_box_1' /> Check me!<br>
</form>
Вот раздел из PHP скрипта process.php
:
echo (isset($_POST['check_box_1']))?'Set':'Not set';
Выход сценария, когда флажок установлен является
Set
Но если флажок не установлен, то выход:
Не установлено
Почему это? Это похоже на очень плохой дизайн, потому что мой PHP-скрипт проверяет количество переменных $_POST
, чтобы убедиться, что они были переданы вместе с скриптом. Если значение $_POST['check_box_1']
не установлено, то откуда я могу узнать, не прошел ли сценарий по значению или флажок не был установлен?
Утонченная идея! Никогда не думал об этом. –
Как я использую HTML так долго и никогда не знал об этом! Я думаю, что это самый красивый код, который я когда-либо видел. – Gerry
Не работает, если у вас есть несколько вариантов, например – Vodaldrien