Селекты в PHP

Давайте теперь научимся работать с тегом select в PHP. Сделаем такой выпадающий список в нашей форме:

<form action="" method="GET"> <select name="test"> <option>item1</option> <option>item2</option> <option>item3</option> </select> <input type="submit"> </form>

После отправки формы в $_GET селекта будет содержаться значение выбранного тега option:

<?php var_dump($_GET['test']); // 'item1', 'item2' или 'item3' ?>

С помощью выпадающего списка предложите пользователю выбрать страну, в которой он живет.

Атрибут value

Давайте для пунктов списка укажем атрибут value:

<form action="" method="GET"> <select name="test"> <option value="1">item1</option> <option value="2">item2</option> <option value="3">item3</option> </select> <input type="submit"> </form>

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

<?php var_dump($_GET['test']); // '1', '2' или '3' ?>

Объясните, чем удобнее такой подход.

С помощью выпадающего списка попросите пользователя выбрать его язык.

Сохранение значения после отправки

Давайте сделаем так, чтобы выбор пользователя сохранялся после отправки:

<form action="" method="GET"> <select name="test"> <option value="1" <?php if (!empty($_GET['test']) and $_GET['test'] === '1') { echo 'selected'; } ?>>item1</option> <option value="2" <?php if (!empty($_GET['test']) and $_GET['test'] === '2') { echo 'selected'; } ?>>item2</option> <option value="3" <?php if (!empty($_GET['test']) and $_GET['test'] === '3') { echo 'selected'; } ?>>item3</option> </select> <input type="submit"> </form>

Модифицируйте предыдущую задачу так, чтобы выбранное значение не исчезало после отправки.