Checkbox в паре со скрытым элементом

  • Содержание

Известно, что checkbox отправляет свое значение при submit'е формы только когда отмечен. Поэтому скрипт обработки формы, как правило, содержит строки:

if (!isset($_POST['my_checkbox'])){
		$_POST['my_checkbox'] = 0;
}

 

Таких проверок вполне можно избежать, если перед элементом поместить скрытое поле с тем же именем:

<input type="hidden" name="my_checkbox" value="0">
<input type="checkbox" name="my_checkbox" value="1">

В этом случае если checkbox не отмечен, отправится значение скрытого поля, иначе оно будет переписано.

Вот таким простым трюком я решил с вами поделиться.

Понравилась статья? Подпишись на RSS.

Скрытые возможности jQuery Плавная смена фона

Комментарии

  • Владимир написал 23 мая 2010 года

    Способ интересный, но от проверки я бы не отказывался. Что будет если кто-то отправит запрос, например, с помощью cURL'а (без скрытого поля)?

    Ответить
  • Александр написал 24 мая 2010 года

    Без скрытого поле checkbox ведет себя стандартным образом - если не отмечен, он будет отсутствовать в массиве POST данных.

    Ответить