Переключатели и флажки в PHP
Обработка в PHP элементов HTML форм переключатели и флажки
Переключатели radiobutton в PHP
Когда в HTML форме нужно выбрать один из нескольких вариантов, используют элемент HTML формы Radiobutton.
Синтаксис элемента Radiobutton в HTML
<input name="имя элемента" type="radio" value="значение элемента">Название варианта
Общий синтаксис формы с элементом Radiobutton
<form method='get'>
<input name="имя элемента" type="radio" value="Значение варианта 1">Название варианта 1<br>
<input name="имя элемента " type="radio" value=" Значение варианта 2"> Название варианта 2<br>
<input name=" имя элемента " type="radio" value=" Значение варианта 3"> Название варианта 3<br>
...
<input type='submit' name="Submit" value='Отправить'>
</form>
Название выводится на веб страницу, а значение передаётся в массив $_GET.
После нажатия кнопки с типом submit все данные передаются в PHP обработчик форм.
Синтаксис PHP обработчика radiobutton
<?php
echo $_GET['имя элемента']; // Он выведет значение выбранного варианта для элемента формы Radiobutton
?>
Пример PHP скрипта с использованием элемента HTML формы Radiobutton Задаётся вопрос и даются варианты ответов. При выборе неправильного ответа на веб странице выведется "Неверно", при выборе правильного ответа выведется "Верно". В значение вариантов radiobutton мы вписываем "Верно" или "Неверно"
<form method='get'>
Кто написал "Война и мир"?<br>
<input name="answer" type="radio" value="Неверно">А.С. Пушкин<br>
<input name="answer" type="radio" value="Верно">Л.Н. Толстой<br>
<input name="answer" type="radio" value="Неверно">М.Ю. Лермонтов<br>
<input type='submit' name="Submit" value='Отправить'>
</form>
<?php echo $_GET['answer']; ?>
Флажки Checkbox в PHP Подсчет количества выбранных флажков
Когда в HTML форме требуется выбрать несколько вариантов ответа, используется элемент HTML формы Checkbox
Синтаксис элемента Checkbox в HTML форме
<input type="checkbox" name="имя массива с ответами[]" value="значение элемента" />Название варианта ответа <br />
Общий синтаксис HTML формы с элементом Checkbox
<form method="get">
<input type="checkbox" name="имя массива с ответами[]" value="Значение 1" />Название варианта 1<br />
<input type="checkbox" name=" имя массива с ответами[]" value="Значение 2" /> Название варианта 2<br />
<input type="checkbox" name="имя массива с ответами[]" value="Значение 3" /> Название варианта 3<br />
...
<input type="submit" name="formSubmit" value="Submit" />
</form>
Когда нажата кнопка с типом submit, весь массив элемента checkbox передаётся в массив $_GET С помощью цикла foreach мы перебираем все элементы массива checkbox. Подробно о работе с массивами в PHP Для корректной работы цикла перебора всех вариантов checkbox необходимо осуществлять проверку является ли объект перебираемый в foreach массивом
Синтаксис обработки элемента формы Checkbox
if (is_array($_GET['имя массива с ответами'])){
foreach($_GET['имя массива с ответами'] as переменная значения)
{
echo переменная значения;
}
}
Чтобы проверить, что элемент не пустой, используется конструкция
if(!empty(элемент)){
Команды;
}
Пример PHP скрипта с использованием флажка Checkbox В примере анализируются ответы и подсчитывается количество выбранных ответов.
<?php
$k=0;
if (is_array($_GET['answer'])){
foreach($_GET['answer'] as $value)
{
if (!empty($value)) {
$k=$k+1;
}
echo $value, '<br>';
}
echo "Вы знаете {$k} языков программирования", '<br>';
}
?>
<form method="get">
Какие вы знаете языки программирования?<br />
<input type="checkbox" name="answer[]" value="C++" />C++<br />
<input type="checkbox" name="answer[]" value="Python" />Python<br />
<input type="checkbox" name="answer[]" value="Pascal" />Pascal <br />
<input type="submit" name="formSubmit" value="Submit" />
</form>
Как узнать какой выбран флажок в HTML форме
Когда требуется узнать какой выбран именно флажок в HTML форме можно в форме использовать для каждого флажка свое имя.
Синтаксис HTML формы c элементами checkbox с уникальными именами флажков
<form method="get">
<input type="checkbox" name="Имя первого флажка" value="Значение первого флажка" />Надпись в форме первого флажка<br />
<input type="checkbox" name="Имя второго флажка" value="Значение второго флажка" />Надпись в форме второго флажка<br />
…
<input type="submit" name="formSubmit" value="Submit" />
</form>
Чтобы проверить выбран ли конкретный флажок в форме HTML в PHP обработчике нужно использовать следующую конструкцию
if (!empty($_GET['имя флажка'])) { действия;}
Или
if ($_GET[''имя флажка'']==значение этого флажка) {действия;}
Пример обработки в PHP скрипте HTML формы с уникальными именами флажков. Узнаем какие флажки выбраны
<?php
if (!empty($_GET['v1'])) { echo 'Вы выбрали первый флажок <br>';}
if ($_GET['v2']==2) { echo 'Вы выбрали второй флажок<br>';}
if ($_GET['v3']==3) { echo 'Вы выбрали третий флажок<br>';}
?>
<form method="get">
Выбор флажков<br />
<input type="checkbox" name="v1" value="1" />Флажок 1<br />
<input type="checkbox" name="v2" value="2" />Флажок 2<br />
<input type="checkbox" name="v3" value="3" />Флажок 3<br />
<input type="submit" name="formSubmit" value="Submit" />
</form>
В итоге на веб странице будет выведено
Вернуться к содержанию курса PHP Перейти к примеру обработки формы заказа в PHP >>
Полезно : Регистрация домена и размещение сайта на хостинге
Поделиться
Нет комментариев. Ваш будет первым!