Обработка формы заказа в PHP

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

Обработка формы заказа в PHP

В этой статье мы разберём форму заказа компьютера. В HTML форме заказа будут следующие поля: 
Поле для ввода текста в котором заказчик вводит своё имя 
<p>Введите своё имя <input type="text" name="name"></p>
Поля флажки для каждой опции заказа. В нашем случае это компьютерная периферия и установка OC. 
<p><input type="checkbox" name="perif" value="1" />Периферия<br />
<input type="checkbox" name="oc" value="2" />Установка OC<br /></p>

Поля переключатели для выбора, требуется доставка или нет
<p>Нужна ли доставка? <br> </br><input type="radio" name="dost" value="3" />Да<br />
 <input type="radio" name="dost" value="4" />Нет<br /> </p>

В конце формы находится кнопка отправки формы
<input type="submit" name="formSubmit" value="Submit" />
Полный  код HTML формы заказа
<form method="get">
Заказ компьютера <br />
<p>Введите своё имя <input type="text" name="name"></p>
<p>Отметьте галочками нужные опции</p>
<p><input type="checkbox" name="perif" value="1" />Периферия<br />
<input type="checkbox" name="oc" value="2" />Установка OC<br /></p>
<p>Нужна ли доставка? <br> </br><input type="radio" name="dost" value="3" />Да<br />
 <input type="radio" name="dost" value="4" />Нет<br /> </p>
<input type="submit" name="formSubmit" value="Submit" />
</form>

PHP обработчик HTML формы заказа

Введём переменную $s для обозначения суммы заказа
$s=50000;
Чтобы обработка формы начиналась только после нажатия кнопки "Submit" используем условие 
if(isset($_GET['formSubmit'])) {
Действия;
}

Чтобы вывести приветствие по имени, обращаемся к элементу формы с помощью $_GET['name']
if(isset($_GET['formSubmit'])) {
echo "Здравствуйте, {$_GET['name']}! Вы успешно заказали компьютер"
}

Чтобы проверить, выбрана ли в элементе формы checkbox опция "Периферия", используем условие на выбор флажка 
if (!empty($_GET['perif'])) 
{
Действия;
}

Подробнее о работе  сэлементом формы checkbox в HTML и PHP
В случае выбора периферии сумма заказа увеличится и выводится информация о выборе
$s=$s+3000;  
echo '<br>Вы выбрали периферию';
Аналогично проверяем выбор установки OC и увеличиваем сумму заказа и выводим информацию о выборе в случае выбора
if (!empty($_GET['oc'])) 

$s=$s+7000;  
echo '<br>Вы выбрали установку OC';
}

Для выбора доставки используется элемент HTML формы переключатель. Чтобы получить значение переключателя, обращаемся к нему
if ($_GET['dost']==3)
{
Действия;
}

В случае выбора доставки увеличиваем цену и выводим информацию о выборе
if ($_GET['dost']==3) 

$s=$s+500;  
echo '<br>Вы выбрали доставку';
}

Если значение переключателя "Нет", то пользователь выбрал самовывоз. 
if ($_GET['dost']==4) 
{  
echo '<br>Вы выбрали самовывоз';
}

Подробнее о работе в HTML и PHP с переключателями
В конце выводим сумму заказа
echo "Сумма вашего заказа равна {$s}";
Полный код  веб страницы с HTML формой страницы заказа и PHP обработчиком формы заказа
<?php
$s=50000;
   if(isset($_GET['formSubmit'])) {
echo "Здравствуйте, {$_GET['name']}! Вы успешно заказали компьютер"; 
  if (!empty($_GET['perif'])) 

$s=$s+3000;  
echo '<br>Вы выбрали периферию';
}
if (!empty($_GET['oc'])) 

$s=$s+7000;  
echo '<br>Вы выбрали установку OC';
}
if ($_GET['dost']==3) 

$s=$s+500;  
echo '<br>Вы выбрали доставку';
}
if ($_GET['dost']==4) 
{  
echo '<br>Вы выбрали самовывоз';
}
echo '<br>';
echo "Сумма вашего заказа равна {$s}";
}  
?>
<form method="get">
Заказ компьютера <br />
<p>Введите своё имя <input type="text" name="name"></p>
<p>Отметьте галочками нужные опции</p>
<p><input type="checkbox" name="perif" value="1" />Периферия<br />
<input type="checkbox" name="oc" value="2" />Установка OC<br /></p>
<p>Нужна ли доставка? <br> </br><input type="radio" name="dost" value="3" />Да<br />
 <input type="radio" name="dost" value="4" />Нет<br /> </p>
<input type="submit" name="formSubmit" value="Submit" />
</form>

Пример вывода на веб страницу, выбраны все опции в HTML форме заказа

html форма заказа

Вернуться к содержанию курса по PHP   Перейти к примеру online тест на PHP >>
 

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

Поделиться 

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

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