# Сохранение выбранного значения в чекбоксе после отправки в PHP

Давайте теперь сделаем так, чтобы значение чекбокса сохранялось после отправки. Для этого проверим, что `$_GET['flag']` существует (то есть была отправка формы) и равен единице (то есть флажок отмечен).

Если эти два условия выполняются, то выведем в чекбоксе атрибут `checked`:

`<form action="" method="GET"> <input type="hidden" name="flag" value="0"> <input type="checkbox" name="flag" <?php if (isset($_GET['flag']) and $_GET['flag'] === '1') echo 'checked'; ?> > <input type="submit"> </form>`

Проверку можно упростить, если мы точно знаем, что скрытый инпут передает `0`. В таком случае, если чекбокс не отмечен, то в `$_GET['flag']` будет лежать `'0'`, а если отправки формы еще не было, то будет лежать `null`.

В обоих этих случаях мы не должны выводить `checked`. И оба этих случая мы можем поймать функцией `empty`. Таким образом мы можем проверить, что `$_GET['flag']` не пуст, и только в этом случае вывести `checked`:

`<form action="" method="GET"> <input type="hidden" name="flag" value="0"> <input type="checkbox" name="flag" value="1" <?php if (!empty($_GET['flag'])) echo 'checked' ?> > <input type="submit"> </form>`

Сделайте три чекбокса, которые будут сохранять свое значение после отправки.

←→
↑