Categories

Добавление полей в контактную форму в HTML

Gordon J. Blair Апрель 20, 2011
Rating: 4.5/5. From 11 votes.
Please wait...

Этот урок покажет, как добавить поля в контактную форму в HTML . Данный урок – это продолжение туториала Как создать контактную форму в HTML. Если у Вас остались файлы из предыдущего урока, то откройте их, чтобы продолжить работу или же скачайте

Часть 1. HTML

В любом HTML редакторе откройте файл index.html. В нем есть 2 кнопки, созданные элементом input, 1 текстовый элемент и две кнопки, созданные с помощью buttons. Давайте добавим больше разных функций таких как, например, флажки (checkboxes), переключатели (radio buttons) и выпадающий (drop-down) список. Прямо после кнопок Submit (подписать) и Reset (Сброс) добавьте следующий код.

Дополнительные опции:

	USA
Canada
Mexico

Вы согласны?

Yes
No

Выберите элемент из выпадающего списка:


Давайте разберем несколько интересных моментов в этом коде. Вы, наверное, обратили внимание, что имена, присвоенные к флажкам, не отличаются, как в случае с добавленным ранее текстовым редактором, и в конце у них стоят квадратные скобки. Скобки определяют, что это переменная массива. Вот как это работает. Для каждого чекбокса, массив check[] получает значение нажатого флажка. Например, после того как Вы выбрали два флажка USA и Canada, массив check[] будет иметь значения checked_usa и check_canada.

Ничего фантастического не происходит с переключателями (radio buttons) и выпадающим (drop-down) списком. К двум переключателям мы привязываем имя «cf_radio_button«, так как нельзя выбрать оба переключателя одновлеменно, то нет необходимости каждому давать уникальное имя.

Синтакс выпадающего списка также очень простой. Откройте тэг . У тэга

Вот такой будет результат после добавления кода.

HTML contact form(нажмите для увеличения)

Часть 2. PHP

Итак, у нас есть элементы на странице. Теперь мы должны обработать переданные данные и добавить в отправленное письмо. Вот конечный код файла contact.php


	

	

Давайте посмотрим, что мы добавили в код и для чего.

Мы будем использовать функцию php foreach() для организации перебора всех элементов массива «check» и для сохранения каждого элемента массива в значение $value. Потом создадим значение $check_boxes и расширим его значением каждого элемента в массиве

foreach($_POST['check'] as $value) {
	$check_boxes .= $value." ";
}

Как вы видите, радио-кнопки и выпадающий список определяются также как и текстовое поле ввода. Мы создаем PHP переменную и присваиваем ей данные, отправляемые из переключателей (radio box )или выпадающего списка.

$radio_button = $_POST['cf_radio_button'];
$drop_down_item = $_POST['cf_drop_down'];

Эта часть кода аналогична той, что мы создавали раньше. Мы только добавили новые данные в э-мейл

$body_message .= "Additional options checked: ".$check_boxes."\n";
$body_message .= "Did the customer agree: ".$radio_button."\n";
$body_message .= "Selected item from the dropdown list: ".$drop_down_item;

СОВЕТ:Одно маленькое обновление, которое может быть полезно. В предыдущей версии скрипта, после предупреждения JavaScript, стоит перенаправление на страницу, которую Вы указали в коде window.location = ‘contact_page.html’;. Поэтому, если Вы переименовываете contact_page.html на что-то другое, Вам нужно будет изменить имя файла в contact.php. Лучше было бы заменить этот код на этот

history.back(1);

Обычно код сам объясняет, что он делает. Это тоже самое, что и нажатие в браузере кнопки Back/Назад.

Эта запись была размещена в Работа с HTML и помечена как contact, field, form, HTML, input, php, radio, select. Добавьте в закладки постоянную ссылку.

Submit a ticket

Если вы не смогли найти подходящее решение проблемы, пожалуйста воспользуйтесь следующей ссылкой, чтобы отправить запрос команде технической поддержки.
Отправить запросВы получите ответ в течение 24 часов