Как в PHP получить значение checkbox

Как в PHP получить значение checkbox

От автора: приветствую вас, друзья. Из данной статьи, которая написана прежде всего для новичков, вы узнаете, как в PHP получить значение checkbox из формы и обработать его. Эта функция может потребоваться достаточно часто на сайте, например, когда вам нужно в зависимости от того, отмечен был чекбокс или нет выполнить тот или иной код. Приступим.

Исходные файлы текущей статьи вы можете скачать по ссылке.

Классическая ситуация использования в форме чекбокса, который необходимо проверить, это подтверждение соглашения с некими условиями. Еще одним классическим вариантом будет использование поля checkbox в форме авторизации, когда пользователь хочет запомнить себя, чтобы не вводить повторно данные через некоторое время.

Давайте остановимся на втором варианте и создадим простую форму авторизации, в которой присутствует поле checkbox Запомнить меня.

Практический курс по верстке адаптивного сайта с нуля!

Изучите курс и научитесь верстать современные сайты на HTML5 и CSS3

Узнать подробнее

Вот такая симпатичная форма у нас получилась:

В качестве обработчика мы указали файл login.php, на который будет отправлена форма. Как принять данные из обычных полей типа text и подобных мы знаем, для этого достаточно обратиться к соответствующему массиву и элементу в этом массиве. Поскольку данные передаются методом POST, то для того, чтобы обратиться к логину пользователя, мы используем следующую запись: $_POST['login']. Именно здесь будет храниться переданный логин пользователя.

С этим все понятно. А как же получить значение чекбокса в PHP? Здесь все также просто. Давайте попробуем распечатать на экран весь массив $_POST целиком в обработчике:

И отправим заполненную форму, отметив чекбокс:

Как видим, в массиве $_POST находятся все элементы формы. При этом значение элемента remember, который отвечает за чекбокс в нашем случае, равно строке on.

Теперь попробуем не отмечать чекбокс и отправим форму еще раз.

Сейчас элемента remember в массиве уже нет. Получается, для того, чтобы проверить, был ли отмечен checkbox, достаточно просто проверить наличие соответствующего элемента в массиве. Также дополнительно можно проверить, равен ли он строке on или же возвращает ли его значение true. Последняя проверка, в принципе, для современных браузеров вряд ли является обязательной, но старые браузеры, помнится, могли создавать в массиве пустой элемент, даже если чекбокс не был отмечен.

В итоге PHP код с учетом обработки значения чекбокса будет выглядеть примерно так:

Вот, собственно, и вся премудрость. Ну а на этом текущую статью мы завершаем. Дополнительно по работе с формами вы можете посмотреть этот урок. Удачи!

Практический курс по верстке адаптивного сайта с нуля!

Изучите курс и научитесь верстать современные сайты на HTML5 и CSS3

Узнать подробнее

Курс по программированию на языке PHP

Изучите PHP с нуля до результата!

Смотреть курс

Метки:

Похожие статьи:

Комментарии Вконтакте:

Комментарии Facebook:

Добавить комментарий

Ваш e-mail не будет опубликован. Обязательные поля помечены *

Можно использовать следующие HTML-теги и атрибуты: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code class="" title="" data-url=""> <del datetime=""> <em> <i> <q cite=""> <strike> <strong> <pre class="" title="" data-url=""> <span class="" title="" data-url="">

Я не робот.

Spam Protection by WP-SpamFree