www.seomark.ru |
Веб-дизайн и поисковая оптимизация |
|
Главная | Веб-дизайн и оптимизация сайтов | Фотолаборатория | Радиотехника | Полезные программы | Разработка сайтов | ||
Создание формы обратной связи
Выбор нескольких элементов в теге <select> формы обратной связиПри создании формы обратной связи часто используются списки, создаваемые тегом <select>. Несмотря на простоту его применения, иногда возникают проблемы с обработкой таких списков, особенно, если вы не знакомы со страшным зверем по кличке РНР. Однако, в большинстве случаев работы с формами можно обойтись и без знания этого языка программирования, а использовать только логическое мышление. Рассмотрим два конкретных примера. 1. Раскрывающийся список с выбором одного элемента. HTML-код формы обратной связи, в данном случае, следующий:
В браузере это выглядит так (пример рабочий, можно потыкать): Рис.1. Форма обратной связи с выбором одного элемента из спискаВ данном примере после обработки формы на сервере на вашу почту придет название выбранной марки авто. За отправку письма отвечает программа, размещенная на странице mail.php. Эту страницу следует разместить на сайте в той же папке, что и страница с формой. Полный рабочий код страницы mail.php следующий:
Обратите внимание, что для обработки формы используется указанное в теге <select> имя name="car", а его значение подставляется из тегов <option> (строчка 2. Раскрывающийся список с выбором нескольких элементов. Для его создания необходимо в HTML-коде формы обратной связи добавить атрибут multiple="multiple" в тег <select > и, что особенно важно (!), добавить квадратные скобки после имени. В данном примере это name="car[ ]". Если их не добавить, то вы получите на почту только одно, последнее введенное значение из списка. Это происходит потому, что обработчику, то есть РНР-программе, последовательно передаются из формы все выбранные элементы (теги option), а так как переменная задана только одна ($car), то следующий элемент перезаписывает предыдущее значение. В результате и остается только последнее введенное значение. Кроме того, желательно указать в теге <select> число выводимых строк в поле списка. Их количество задается атрибутом size и обычно устанавливается равным количеству элементов списка, но никто не запрещает выбрать любое значение, определяемое дизайном страницы, то есть вашей фантазией. Измененный вариант HTML-кода списка с выбором нескольких элементом и его вид в браузере показан на рис.2. Чтобы выбрать несколько значений, используйте клавиши Shift и Ctrl.
Рис.2. Форма обратной связи с выбором нескольких элементов из спискаКвадратные скобки в имени name="car[ ]" указывают PHP-программе, что переменную $car нужно считать массивом (списком), и каждый выбранный пользователем элемент добавлять в этот массив. Первый элемент будет $car[0], следующий - $car[1] и т.д. Чтобы весь этот список, а не только последний выбранный элемент, поступил на вашу почту, необходимо изменить одну строку в приведенной выше программе на странице mail.php: Естественно, не забывайте проследить, чтобы количество переменных $car[ ] в этой строке равнялось количеству тегов <option> в вашей форме обратной связи. Для нашего случая их шесть. В рассмотренных примерах использования тега <select> иногда возникает необходимость оставить в списке какие-либо элементы, но запретить их выбор пользователем. Для этого достаточно в атрибуте <option> соответствующей строки добавить disabled="disabled". При этом элемент выделяется серым цветом и становится недоступным для выбора. В примере на рис.2 - это "Жигули".
14.11.2012 г. |
||
|
||
Главная | Веб-дизайн и оптимизация сайтов | Фотолаборатория | Радиотехника | Полезные программы | Разработка сайтов | ||
Copyright © 2008 - Марк Розенталь e-mail: Перепечатка материалов сайта разрешается при условии сохранения имени автора и гиперссылки на www.seomark.ru Ключевые слова: форма обратной связи, создание формы обратной связи, форма обратной связи для сайта |