Переключатели и флажки в PHP

13 мая 2020 - Администратор

Обработка в 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']; ?>

 переключатели в php

Флажки 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>

флажки в php

Как узнать какой выбран флажок в 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>

В итоге на веб странице будет выведено

html форма  с флажками

Вернуться к содержанию курса PHP   Перейти к примеру обработки формы заказа в PHP >>

Полезно : Регистрация домена и размещение сайта на хостинге

Поделиться 

 
 
Комментарии (0)

Нет комментариев. Ваш будет первым!