Просмотра обратная связь тел email. Создание формы обратной связи

Одной из наиболее часто встречающихся на практике задач является реализация формы обратной связи. Тобишь написание ее HTML кода, оформление ее на CSS, создание PHP скрипта, который бы обрабатывал полученные от пользователя данные и отправлял их на нашу почту, написание JS скрипта, который бы проверял форму на адекватность вводимых данных, защита нашего детища от спама, чтобы наш почтовый ящик не обвалился от атак ботов.

Все вышеперечисленные моменты будут рассмотрены в нашем обзоре и подробно прокомментированы.

Итак, начинаем создание формы обратной связи:

HTML

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

< form method= "post" action= "mail.php" > < div class = "left" > < label for = "name" > Имя: < input maxlength= "30" type= "text" name= "name" /> < label for = "phone" > Телефон: < input maxlength= "30" type= "text" name= "phone" /> < label for = "mail" > E- mail : < input maxlength= "30" type= "text" name= "mail" /> < div class = "right" > < label for = "message" > Сообщение: < textarea rows= "7" cols= "50" name= "message" > < input type= "submit" value= "Отправить" />

И визуально она выглядит сейчас следующим образом:

Согласен, пока все некрасиво и ничего не понятно, но мы только начали.

Рассмотрим приведенный выше код подробно:

  • < form method= "post" action= "mail.php" > …


    для того, чтобы создать форму необходимо использовать тег form. Именно он определяет начало и конец формы для интерпретатора кода. У него, как и у любого тега, есть целый набор атрибутов, но обязательных для работы формы всего два, это method (метод отправки запроса на сервер, для форм стандартно используют post) и action (указывает путь к файлу-обработчику формы, именно в этом файле будет содержаться скрипт на PHP, который после будет отправлять введенные пользователем значения нам на почту, в нашем случае мы видим, что это файл называется mail.php и лежит он в том же директории сайта, что и рассматриваемая нами страница).
  • < input maxlength= "30" type= "text" name= "name" />


    Далее у нас следуют инпуты. Это собственно сами поля формы в которые пользователи будут вводить необходимую нам информацию (type="text" говорит о том, что это будет текст). Атрибут maxlength указывает сколько символов может ввести пользователь в данное поле формы. Самый важный атрибут это name – он задает имя конкретного поля. Именно по этим именам в дальнейшем PHP скрипт будет обрабатывать поступающую в него информацию. При желании можно еще задать атрибут placeholder, который выводит внутри поля текст исчезающий при установке курсора внутри нее. Одной из проблем плейсхолдера является то, что он не поддерживается некоторыми старыми браузерами.
  • < label for = "name" > Имя:


    Используется в случае если мы отказались от плейсхолдеров. Обычная подпись поля, атрибут for сообщает к какому конкретно полю относится данная подпись. Значением указывается name интересующего нас поля.
  • < textarea rows= "7" cols= "50" name= "message" >


    Также как и инпут предназначен для введения пользователем информации, только на этот раз поле заточено для длинных сообщений. Rows указывает размер поля в строках, cols в символах. В целом они задают высоту и ширину нашего поля.
  • < input type= "submit" value= "Отправить" />


    О том, что это кнопка для отправки формы нам сообщает type="submit", а value задает текст, который будет внутри этой кнопки.
  • < div class = "right" >


    использованы только для дальнейшего визуального оформления формы.

CSS

Для того, чтобы наша форма обратной связи выглядела презентабельно ее нужно оформить. Для получения следующего результата:

Мы использовали данный код:

form { background: #f4f5f7; padding: 20px; } form . left, form . right { display: inline- block; vertical- align: top; width: 458px; } form . right { padding- left: 20px; } label { display: block; font- size: 18px; text- align: center; margin: 10px 0px 0px 0px; } input, textarea { border: 1px solid #82858D; padding: 10px; font- size: 16px; width: 436px; } textarea { height: 98px; margin- bottom: 32px; } input[ type= "submit" ] { width: 200px; float: right; border: none; background: #595B5F; color: #fff; text- transform: uppercase; }

Подробно расписывать CSS я не вижу смысла, обращу Ваше внимание лишь на ключевые моменты:

  1. Не стоит писать оформление под каждый тег в форме. Старайтесь строить свои селекторы так, чтобы парой строк кода оформлять все необходимые Вам элементы.
  2. Не используйте для переноса строк и создания отступов лишние теги по типу < br>, < p> и тд, с этими задачами прекрасно справляется CSS со свойством display: block и margin с padding. Больше о том, почему не стоит пользоваться < br> в верстке вообще можете почитать в статье Тэг br, а так ли он нужен? .
  3. Не стоит пользоваться табличной версткой для форм. Это противоречит семантике этого тега, а поисковики любят семантичный код. Для того, чтобы формировать визуальную структуру документа нам достаточно тегов div, и заданных им в CSS свойств display: inline-block (выстраивает блоки в ряд) и vertical-align: top (не дает им разбежаться по экрану), задаем им необходимую высоту и вуаля, ничего лишнего и все расположено так, как нам нужно.

Для желающих экономить свое время на оформлении сайтов могу посоветовать пользоваться CSS фреймворками при создании сайтов, особенно самописных. Мой выбор в этом плане- Twitter Bootstrap . Урок по оформлению форм с его использованием можно посмотреть .

PHP

Ну вот и пришло время сделать нашу форму работоспособной.

Заходим в наш корневой каталог сайта и создаем там файл mail.php, к которому мы ранее указывали путь в атрибуте action тега form.

В конечном итоге его код будет выглядеть следующим образом:

Ваше сообщение успешно отправлено \" javascript: history.back()\" >Вернуться назад

" ; if (! empty ($_POST [ "name" ] ) and ! empty ($_POST [ "phone" ] ) and ! empty ($_POST [ "mail" ] ) and ! empty ($_POST [ "message" ] ) ) { $name = trim (strip_tags ($_POST [ "name" ] ) ) ; $phone = trim (strip_tags ($_POST [ "phone" ] ) ) ; $mail = trim (strip_tags ($_POST [ "mail" ] ) ) ; $message = trim (strip_tags ($_POST [ "message" ] ) ) ; mail (, , "Вам написал: " . $name . "
Его номер: " . $phone . "
Его почта: " . $mail . "
Его сообщение: "
. $message , ) ; echo "Ваше сообщение успешно отправлено!
Вы получите ответ в ближайшее время
$back "
; exit ; } else { echo ; exit ; } ?>

Обсуждение HTML и CSS части этого документа можно пропустить. По своей сути это обычная страница сайта, которую Вы можете оформить по своему желанию и необходимости. Рассмотрим же важнейшую ее часть – PHP скрипт обработки формы:

$back = "

\" javascript: history.back()\" >Вернуться назад

" ;

Этой строкой мы создаем ссылку для возвращения на предыдущую страницу. Поскольку мы заранее не знаем с какой страницы пользователь попадет на эту, то делается это при помощи маленькой JS функции. В дальнейшем мы просто будем обращаться к этой переменной для вывода ее в нужных нам местах.

if (! empty ($_POST [ "name" ] ) and ! empty ($_POST [ "phone" ] ) and ! empty ($_POST [ "mail" ] ) and ! empty ($_POST [ "message" ] ) ) { //внутрення часть обработчика } else { echo "Для отправки сообщения заполните все поля! $back " ; exit ; }

Тут мы прикручиваем проверку формы на наполненность полей. Как вы догадались, в части $_POST["name"] в кавычках мы пишем значение атрибута name наших инпутов.

Если все поля заполнены, то скрипт начнет обрабатывать данные в своей внутренней части, если же хоть одно поле не было заполнено, то на экран пользователя выведется сообщение с требованием заполнить все поля формы echo "Для отправки сообщения заполните все поля! $back" и ссылкой для возврата на предыдущую страницу, которую мы создали самой первой строкой.

Дале вставляем во внутреннюю часть обработчика формы:

$name = trim (strip_tags ($_POST [ "name" ] ) ) ; $phone = trim (strip_tags ($_POST [ "phone" ] ) ) ; $mail = trim (strip_tags ($_POST [ "mail" ] ) ) ; $message = trim (strip_tags ($_POST [ "message" ] ) ) ;

Таким образом мы очистили вводимые пользователем данные от html тегов и лишних пробелов. Это позволяет нам обезопасить себя от получения вредоносного кода в высылаемых нам сообщениях.

Проверки можно и усложнить, но это уже по вашему желанию. Минимальную защиту на серверной стороне мы уже поставили. Дальнейшее мы сделаем на стороне клиента используя JS.

Полностью отказываться от защиты формы на серверной стороне в пользу JS не рекомендую, поскольку хоть и крайне редко, но встречаются уникумы с отключенным в браузере JS.

После чистки тегов добавляем отправку сообщения:

mail ("почта_для_получения_сообщений@gmail.com" , "Письмо с адрес_вашего_сайта" , "Вам написал: " . $name . "
Его номер: " . $phone . "
Его почта: " . $mail . "
Его сообщение: "
. $message , "Content-type:text/html;charset=windows-1251" ) ;

Именно эта строка и занимается формированием и отправкой сообщения к нам. Заполняется она следующим образом:

  1. "почта_для_получения_сообщений@gmail.com" – сюда между кавычек вставляете свою почту
  2. "Письмо с адрес_вашего_сайта" – это тема сообщения, которое будет приходить на почту. Можно написать сюда что угодно.
  3. "Вам написал: ".$name." < br /> Его номер: ".$phone." < br /> Его почта: ".$mail." < br /> Его сообщение: ".$message – формируем сам текст сообщения. $name – вставляем информацию заполненную пользователем через обращение к полям из предыдущего шага, в кавычках описываем что значит это поле, тегом < br /> делаем перенос строки, чтобы сообщение в целом было читабельно.
  4. Content-type:text/html;charset=windows-1251 - в конце идет явное указание типа данных передаваемого в сообщении и его кодировки.

ВАЖНО!

Кодировка указанная в «голове» документа ( < meta http- equiv= "Content-Type" content= "text/html; charset=windows-1251" /> ), кодировка из сообщения Content-type:text/html;charset=windows-1251 и в целом кодировка файла PHP должны совпадать иначе в получаемых на почту сообщениях вместо русских или английских букв будут выводиться «кракозябры».

Многие не указывают кодировку отправляемого сообщения явно, но на некоторых почтовых клиентах из-за этого в дальнейшем могут возникнуть проблемы (на почту приходят нечитабельные письма), потому я рекомендую ее все-же указывать.

Проверка формы на адекватность вводимых данных

Чтобы пользователи по невнимательности не промахивались полями и заполняли все корректно стоит поставить проверку вводимых данных.

Это можно сделать как на PHP на стороне сервера, так и на JS на стороне клиента. Я использую второй вариант, поскольку так человек сразу может узнать что он сделал не верно и исправить ошибку не делая дополнительных переходов по страницам.

Код скрипта вставляем в том же файле, где у нас располагается HTML часть формы. Для нашего случая он будет выглядеть так:

< script> function checkForm(form) { var name = form. name. value; var n = name. match(/ ^[ A- Za- zА- Яа- я ] * [ A- Za- zА- Яа- я ] + $/ ) ; if (! n) { alert("Имя введено неверно, пожалуйста исправьте ошибку" ) ; return false ; } var phone = form. phone. value; var p = phone. match(/ ^[ 0 - 9 + ] [ 0 - 9 - ] * [ 0 - 9 - ] + $/ ) ; if (! p) { alert("Телефон введен неверно" ) ; return false ; } var mail = form. mail . value; var m = mail . match(/ ^[ A- Za- z0- 9 ] [ A- Za- z0- 9 \. _- ] * [ A- Za- z0- 9 _] *@ ([ A- Za- z0- 9 ] + ([ A- Za- z0- 9 - ] * [ A- Za- z0- 9 ] + ) * \. ) + [ A- Za- z] + $/ ) ; if (! m) { alert("E-mail введен неверно, пожалуйста исправьте ошибку" ) ; return false ; } return true ; }

Ну а теперь обычный разбор:

Для того, чтобы при нажатии на кнопку отправки формы, у нас происходила ее проверка вешаем запуск нашего скрипта на тег form:

< form method= "post" action= "mail.php" onSubmit= "return checkForm(this)" >

Теперь по пунктам забираем состав проверки:


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

Форма обратной связи для сайта , которую я вам покажу – основана на использовании технологии Ajax. Но не волнуйтесь, знать этого вам не надо, все уже готово, останется только установить эту форму и настроить под себя!

Ребята - скрипт очень давно устарел. У кого-то работает, у кого то нет. А мне разбираться и уж тем более обновлять - лень. Поэтому тестируйте на своё усмотрение.

Форма обратной связи php с отправкой на почту

Эта форма обратной связи на сайт очень функциональна сама по себе, к ней подключено несколько плагинов, которые создают привлекательный внешний вид и проверяют валидность (читай правильность) введенных вами данных. Эти плагины работают на великом и могучем ! А называются так:

    1. JQTransform – плагин который позволяет сделать нашу форму обратной связи красивой!

    2. formValidator – а этот плагин проверяет форму контактов на правильность введенной информации и в случае чего выводит всплывающие подсказки!

Для полноценной работы этой формы будет использован класс – PHPMailer. Считается одним из лучших!

Заметка для самых умных:

Форму обратной связи для сайта можно сделать на HTML! Но работать она начнет только при помощи PHP! И никак иначе!

Это я для тех, кто ищет форму обратной связи только на HTML. Сделать сделаете, но работать она не будет!

Поэтому, ваш должен поддерживать PHP, а для этой формы контактов, PHP должен быть не ниже пятой версии. Надеюсь, понятно излагаю? Тем более, сейчас, любой нормальный хостинг поддерживает эти условия!

Эту форму обратной связи я откопал на сайте www.tutorialzine.com ссылка ведет непосредственно на страницу оригинала, т.е. сайт автора данной формы!

Там все на английском, поэтому нам с Сашей пришлось немного повозиться, что бы русифицировать данную форму контактов и сами плагины, которые подключены к ней.

Признаюсь честно, мы с этой «формочкой» провозились два дня, так как начинали всплывать различные косяки, а недоделанную до конца форму обратной связи, тем более такую красивую, выкладывать не хотелось! Так что если вы любитель все сделать сами, и в вашу светлейшую голову влезет мысль – самому русифицировать данную форму, дам пару советов, так как просто переводом фраз не ограничишься:

    1. Эта форма обратной связи заточена под буржуев, от туда же и скачена, поэтому она будет присылать вам вместо нормальных русских символов – кракозяблы. Разберитесь с кодировкой. Да и вообще все «тюлени» будут связаны с этим!

    2. Скрипт валидации изначально не понимает наши букв, поэтому их там надо будет прописать!

    3. Даже после этих действий если указать тему письма на русском, письмо приходит с темой – No subject (надеюсь правильно написал), это лечится если указать кодировку в файле класса PHPMailer.

    4. В оригинальной форме текст в полях ввода прижимался к низу, а не по середине. Это глюк плагина JQTransform.

Ну, вроде все расписал и предупредил. Поехали дальше!

Приветствую дорогой читатель, сегодня приготовил для Вас вкусненькую форму обратной связи html, которая работает без перезагрузки страницы по технологии Ajax + мощный триггер, который будет мотивировать ваших посетителей воспользоваться формой. Читатели моего блога очень активно обсуждали мою предыдущую статью по на Landing Page, теперь оцениваем, смотрим на доработанную новую форму. Все необходимые исходники и демо прикрепил в статье , структуру работы и подключению так же разберем.

UPD: Устранена ошибка с кодировкой имени в теме письма. Теперь все отображается верно. Благодарим читательницу (Екатерину Карачеву)

Формат самой формы так же включает файл обработчик на языке php, дополнительно для работы понадобится библиотека jquery и скрипты, но обо всем по порядку, не буду долго грузить — переходим к обзору и разбору нашей обратной связи.

Форма обратной связи html — структура работы

Внешний вид нашей формы выглядит следующим образом

В чем здесь вся соль? Форма так таковая есть с правой стороны, а вот в левой части сделал специальный блок, который будет стимулировать вашего посетителя ввести свои контактные данные немедленно! Секрет прост: Видите дату и время в левом блоке? Дата будет выводиться сегодняшняя все время, со временем диапазон этих двух часов высчитывается от настоящего часа, допустим если у вас сейчас время 13:14 , то диапазоном часов будет: с 12 до 14. Посмотрите на как это работает)))

Посетитель будет видеть: ух ты скидка сегодня, да и по времени я как раз попал вовремя, тут еще и скидка! Надо брать незамедлительно! — Вот это и есть наш триггер.

Исходники формы обратной связи html скачали, демо посмотрели — наигрались думаю)) Теперь о само насущном, принцип работы:

Проверка полей в форме input происходит в файле обработчика contact.php ниже в листинге программного кода сможете посмотреть, сообщение об ошибках и успешной отправке письма появляется в самой форме, вот так это выглядит, после отправки:

Исходный код обработчика формы

Вставьте в строке 52 свою почту, таким образом все письма будут приходить на указанную почту.

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69

< 1) { $error .= "Введите ваше сообщение.
<".$tel.">
".$error."
"; } } ?>

"; } // Проверка телефона function ValidateTel($valueTel) { $regexTel = "/^{7,12}$/"; if($valueTel == "") { return false; } else { $string = preg_replace($regexTel, "", $valueTel); } return empty($string) ? true: false; } if(!$tel) { $error .= "Пожалуйста введите телефон.
"; } if($tel && !ValidateTel($tel)) { $error .= "Введите корректный телефон.
"; } if(!$error) // Проверка сообщения (length) if(!$message || strlen($message) < 1) { $error .= "Введите ваше сообщение.
";// В этой строчке ставиться минимальное ограничение на написание букв. } if(!?utf-8?b?". base64_encode($name) ."?="; $message ="\n\nИмя: ".$name."\n\nНомер телефона: " .$tel."\n\nСообщение: ".$message."\n\n"; $mail = mail("[email protected]", $subject, $message, "From: ".$name_tema." <".$tel."> "."Reply-To: ".$email." "." X-Mailer: PHP/" . phpversion()); if($mail) { echo "OK"; } } else { echo "

".$error."
"; } } ?>

Работоспособность формы

Чтобы приходили письма на ваш почтовый ящик, измените строку о которой я говорил выше. Советую использовать gmail.com почту, на ней задержек и косяков не наблюдается при получении сформированного письма из формы. Предупредил, т.к. много было вопросов у читателей (письма не приходят на mail.ru). Будьте внимательны на этот счет.

Заполняем все поля, обратите внимание, что телефон вводится с 8 — я специально в подсказке так и написал номер с восьмерки «89251122333». При вводе знака «+» появится сообщение об ошибке. Если кому-то нужно, то легко добавить в обработчик данный «+» .

Заполненная форма с тестовыми данными

Письмо на почтовом ящике

Как видите письмо получили, со всеми тремя полями, которые заполняли и отправили. Заголовок письма «Заявка с сайта сайт» меняется в обработчике contact.php

Все работает отлично, будет приятно услышать вашу обратную связь (конструктивную критику) в комментариях, если появились затруднения и с чем-то не справляетесь — смело пишите мне в VK (в контактных данных найдете). Надеюсь вам понравился и дизайн и функционал данного симбиоза формы обратной связи (заказа услуг, заявки) и триггера, призывающего к действию. Всем удачи в работе и позитивного настроя, пока))

Подготовлено при поддержке,

Управление сайтом во многих случаях включает в себя взаимодействие с его посетителями в рамках механизмов обратной связи. Представлены они могут быть в разных вариантах. Например, в виде формы обратной связи. В каких разновидностях она может быть представлена? Каковы особенности внедрения соответствующей формы в структуру сайта?

Что представляет собой форма обратной связи на сайте?

Форма, о которой идет речь, представляет собой интерфейс, который предназначен для передачи администраторам сайта различных сообщений от посетителей. Данная форма может быть удобной альтернативой использованию электронного адреса, а в некоторых случаях — диалоговым интерфейсам в формате чата. Задействовав ее, пользователь может быть уверен, что его сообщение дойдет до адресата и не попадет, таким образом, в спам, и при этом у него нет необходимости использовать сторонние программы для работы с почтовым ящиком.

Обратная связь для сайта (HTML-формата или, например, в виде скриптов PHP либо написанных на другом языке программирования) может быть настроена так, чтобы посетитель онлайнового ресурса смог отразить в сообщении суть своего вопроса, а также указать собственные персональные и контактные данные. Изучим то, посредством каких механизмов могут быть реализованы интерфейсы взаимодействия администраторов сайта и его посетителей.

Способы организации обратной связи на сайте

Запустить сервис обратной связи для сайта можно разными способами. В числе самых распространенных:

Использование бесплатных онлайновых сервисов, генерирующих специальный HTML-код для формы обратной связи;

Использование сервисов, предоставляющих соответствующие HTML-коды, а также скрипты PHP, необходимые для обеспечения функционирования формы обратной связи;

Использование готовых скриптов и их встраивание в HTML-код страниц на сайте.

Первые 2 способа могут подойти пользователям, не имеющим большого опыта в области веб-разработки. В свою очередь, 3-й метод во многих случаях более всего подходит специалистам, которые смогут корректно встроить соответствующий сервис обратной связи для сайта в структуру веб-страниц. Но это очень условные зависимости. Вполне может быть и так, что пользование сервером для генерации HTML-кода на практике окажется более сложной процедурой, чем загрузка готового PHP-скрипта.Рассмотрим то, каким образом указанные возможности могут задействоваться на практике.

Форма обратной связи на сайте как PHP-скрипт

Если пользователю предпочтителен вариант, при котором будет использоваться готовая форма обратной связи для сайта в виде PHP-скрипта, то загрузить ее можно, к примеру, со специализированного сайта script.landman.ru. Основные возможности соответствующих скриптов следующие:

Отправка сообщений пользователями сайта;

Фильтрация спама;

Возможность использовать скрипты в целях заказа тех или иных товаров и услуг.

В состав скриптов, предлагаемых командой разработчиков указанного сайта, входят:

PHP-скрипт, предназначенный для обработки сообщений от посетителей сайта;

Набор специальных шрифтов для антиспама.

Таким образом, в данном комплекте присутствует все необходимое для организации простой, и в то же время функциональной и надежной формы обратной связи. Можно отметить, что она достаточно оперативно может быть проинсталлирована и неподготовленным пользователем. Готовая форма обратной связи для сайта от landman.ru бесплатна, но при условии, что владелец портала, использующий ее, сохранит копирайты разработчиков.

Для того чтобы инсталлировать рассматриваемый скрипт, нужно, прежде всего, проверить файл config.php на предмет корректности адреса e-mail администратора сайта, на который будут приходить сообщения от пользователей. Кроме того, в файле Robots.txt следует прописать ограничение индексации папки с используемыми файлами, которая должна быть скопирована в корневой каталог сервера.

Формы без применения PHP

Форма обратной связи для сайта может быть инсталлирована на веб-страницы без применения скриптов PHP либо файлов, сформированных при задействовании какого-либо другого языка программирования, применение которых на конкретном сервере может быть затруднено либо предполагает использование дополнительных ресурсов, которые могут отсутствовать в распоряжении владельца сайта.

В данном случае речь идет как раз таки о генерации специального HTML-кода. Можно использовать тот, что предлагается разработчиками сервиса main-ip.ru/genform. Необходимо перейти по соответствующему адресу, после — ввести необходимые параметры в форму. Затем можно сгенерировать и скопировать код, после чего разместить его на той или иной странице администрируемого сайта.

Решить задачу — как на сайте сделать форму обратной связи, многие современные веб-дизайнеры предпочитают решать именно с задействованием сервиса main-ip.ru/genform, прежде всего, по той причине, что она позволяет осуществить настройку соответствующей формы по многим важнейшим параметрам. Таким как:

Ширина формы;

Наименование поля, в котором вводится имя пользователя, обращающегося к администрации сайта посредством механизма обратной связи;

Наименование поля указания электронного адреса пользователя;

Параметры различных дополнительных полей (в них могут быть указаны, к примеру, альтернативные способы связи с пользователем — в виде Skype или иного мессенджера);

Название текстового поля, предназначенного непосредственно для ввода сообщения.

Кроме того, используя страницу генерации HTML-кода для формы обратной связи, можно настроить:

Высоту блока с заголовком формы, его цвета — в HTML-кодировке;

Цвет текста, фиксируемого в заголовке, а также в форме сообщения;

Высоту текстовых областей, предназначенных для ввода сообщения, а также персональных данных пользователя;

Размер шрифта используемой формы.

Таким образом, сервис main-ip.ru/genform — в числе самых удобных для пользователей, которым нужна обратная связь для сайта. HTML-код, который генерируется сервисом, очень легко интегрируется в структуру веб-страниц. Главное — после инсталляции данного кода проверить корректность работы соответствующей формы.

Бесплатная обратная связь для сайта может быть организована посредством инструментов, которые имеются в составе популярных оболочек для управления онлайновыми порталами. Такими как, например, Joomla.

Форма обратной связи в Joomla

Интерфейсы для настройки обратной связи в данной системе управления проектами находятся в разделе «Контакты». Как отмечают специалисты, соответствующая форма, несмотря на простоту, имеет достаточную функциональность для того, чтобы обеспечить стабильную взаимосвязь между посетителями сайта и его администраторами.

Как сделать обратную связь на сайте с помощью Joomla? Прежде всего нужно войти в главную панель данной системы, после чего выбрать опцию «Контакты». На открывшейся страницы необходимо создать новую категорию данных. Для этого нужно заполнить несколько полей - «Заголовок», а также «Псевдоним». После необходимо отразить в системе тот факт, что соответствующий контакт публикуется. Затем нужно сохранить настройки в системе.

После того как требуемая категория создана, необходимо сформировать веб-страницу, на которой будет расположена форма обратной связи для сайта. Для решения данной задачи вновь необходимо выбрать опцию «Контакты», после чего кликнуть на кнопке «Новый». Затем нужно заполнить необходимые сведения в открывшемся окне, после — отразить тот факт, что данные публикуются. Настройки, опять же, требуется сохранить.

Обратная связь в Joomla: встраивание формы в структуру сайта

Как только все необходимые процедуры будут осуществлены, то форму обратной связи можно будет размещать на сайте. В этих целях нужно войти в административную панель, после чего выбрать опцию «Меню» и установить место, в котором будет отражаться форма обратной связи. В соответствующем пункте меню необходимо создать новую опцию — ту, что связана с настройками области «Контакты».

После этого должна открыться страница, на которой пользователю необходимо зафиксировать наименование пункта меню, а также указать контакты, которые будут ему соответствовать. Введенные настройки нужно будет сохранить. После этого система обратной связи для сайта под управлением Joomla будет доступна пользователям в разделе «Контакты» администрируемого сайта.

Еще одна популярная платформа для работы с онлайновыми порталами — WordPress. Рассмотрим то, как сделать обратную связь на сайте с применением тех инструментов, которые она включает.

Форма обратной связи на WordPress

Рассматриваемая система управления онлайновыми порталами предполагает задействование в целях решения задачи, о которой идет речь, специальных плагинов. В частности, для организации формы обратной связи может использоваться скрипт Contact Form Plugin (его особенности мы изучим чуть позже). Обычно он доступен в меню главной панели управления WordPress в разделе «Плагины».

Необходимо, выбрав соответствующий скрипт, активировать его. После чего выбрать вкладку «Контакты», а затем скопировать код используемого плагина. После этого необходимо выбрать вкладку «Страницы» и выбрать опцию «Добавить новую». Затем вставить в соответствующее поле ранее скопированный код. При необходимости можно настроить внешний вид страницы с контактными данными. Как только она будет подготовлена, то соответствующую страницу можно опубликовать.

Установка плагинов от WordPress, даже если та или иная их разновидность представляет собой довольно простой код (обратная связь для сайта может организовываться в целях решения разных задач), во многих случаях характеризуется особенностями, на которые полезно обратить внимание. Изучим их в контексте функционала распространенных плагинов, которые доступны в соответствующей системе управления онлайновыми порталами.

Настройка обратной связи на WordPress: нюансы

Использование сервиса WordPress в целях организации обратной связи может быть осуществлено, таким образом, с применением нескольких плагинов. Рассмотрим их. Выше мы отметили, что формы обратной связи, которые можно инсталлировать в структуру сайта на WordPress, могут быть основаны на Contact Form Plugin. Кроме него, в распоряжении пользователя рассматриваемой системы управления онлайновыми порталами находятся такие интерфейсы, как:

SimpleModal — всплывающая форма обратной связи для сайта;

Usernoise — очень быстрый плагин с плавающей кнопкой, при нажатии на которую открывается форма для ввода сообщения;

Contact Form в версии 7.

Первый плагин из соответствующего перечня приспособлен к проверке корректности его заполнения. Второй позволяет выбрать тип запроса, который может быть представлен сообщением пользователя, вопросом или же пожеланием. Третий имеет функцию выбора конкретных получателей сообщения — например, одного или нескольких пользователей, которые зарегистрированы на сайте.

Изучим для примера то, как сделать обратную связь на сайте с применением плагина Contact Form в версии 7.

Настройка формы обратной связи на WordPress: плагин Contact Form 7

Для того чтобы задействовать возможности рассматриваемого плагина в целях решения задачи, о которой идет речь, нужно войти в панель управления WordPress, выбрать опцию «Плагины», после чего кликнуть на кнопке «Добавить новый».

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

Рассматриваемый плагин нужно установить и дождаться сообщения о его успешной инсталляции. Также соответствующее расширение необходимо активировать. После этого в пунктах меню, расположенном в левой части экрана браузера, появится опция Contact Form 7. Если навести на него курсор, то откроется дополнительное меню, в котором необходимо выбрать пункт «Добавить новую». Это нужно для создания нового интерфейса, в структуре которого будет присутствовать форма. Необходимо кликнуть на кнопке, которая называется так же как и пункт - «Добавить новую».

В открывшемся окне необходимо настроить необходимые опции для требуемой формы. Как сделать обратную связь на сайте с учетом особенностей настройки соответствующего интерфейса? Прежде всего, полезно уделить внимание выбору заголовка формы: он может звучать как «Связь с администрацией» или «Написать владельцу сайта».

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

Добавление созданной с помощью плагина Contact Form 7 форму обратной связи осуществляется так же, как и в случае с любым другим интерфейсом из числа предлагаемых разработчиками WordPress. Можно проверить то, насколько корректно работает новая форма обратной связи, отправив тестовое сообщение. Оно должно быть направлено на e-mail владельца сайта, который указывается при настройке параметров плагина.

Резюме

Итак, мы изучили то, как на сайте сделать форму обратной связи. Данная задача может быть решена при задействовании скриптов PHP (либо составленных на другом языке программирования), применения сгенерированного кода HTML или при использовании интерфейсов систем управления онлайновыми проектами — таких как Joomla или, к примеру, WordPress.

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

Любой сайт должен иметь форму обратной связи, поэтому рано или поздно, каждый из нас задумывается о ее разработке. Вариантов в сети достаточно много, кто-то использует популярные плагины, кто-то свои личные наработки, но большая часть ищет готовые решения. В любом случае, наша форма обратной связи для сайта будет рабочей и функциональной и обо всем этом по порядку.

HTML

Итак, начнем, как всегда, с обычной заготовки – html . Для начала нам понадобится форма с несколькими полями. Мы возьмем для наглядности и стандарта всех форм 3 поля. Т.е. это будет Имя, Email и телефон.

Каждый input у нас имеет свое уникальное имя name , оно нам понадобится в дальнейшем для отправки сообщений. Вы можете также свободно добавлять свои поля и не только input , но и select , textarea . Только не забывайте каждому из них присваивать свои имена, которые мы будем использовать при отправке на почту информации. Для удобства я добавил каждому полю атрибут required , благодаря которому браузер не позволит пользователю отправить пустые значения и уведомит о необходимости их заполнения.

CSS

Когда форма готова, можно ее немного преобразить. Тут все также зависит от ваших потребностей и фантазий. Я же, для наглядности набросал немного стилей для каждого элемента, чтобы не выглядело все столь плоским. Но если вам лень или не знаете как это делается, то можете использовать мой вариант:

Form{ max-width: 400px; width: 100%; margin: 0 auto; } input{ box-sizing: border-box; display: block; border: none; box-shadow: inset 0px 0px 4px 1px rgba(0, 0, 0, 0.11); padding: 10px 20px; width: 100%; margin: 10px 0; outline: none; } input{ background: red; border: none; box-shadow: 0px 2px 0 1px #C50909; border-radius: 5px; color: white; text-transform: uppercase; font-weight: 600; width: 200px; cursor: pointer; transition: 0.3s; } input:hover{ background: black; box-shadow: 0px 2px 0 1px black; }

Клиентская часть

Здесь уже стоит разобраться более детально, точнее выбрать для себя подходящий вариант. Для отправки сообщений на почту нам понадобится использовать язык php , т.е. создавать отдельный файл, в который мы будем передавать все эти данные. Но мы данный способ здесь не будем рассматривать, так как гораздо красивее, когда у нас все происходит без перезагрузки страницы. Поэтому мы рассмотрим отправку данных через ajax .

Если вы хотите все сделать по старинке, то вам понадобится немного подправить верхний html и задать форме значение атрибута method (post или get). Все зависит от того, каким способом вы хотите передать данные из формы. А также не забудьте прописать action , который укажет путь к файлу php .

А мы пойдем более продвинутым методом и сделаем отправку данных не перезагружая страницу, и получая ответ от сервера будем выдавать пользователю сообщение об успешной операции, либо ошибке. Однако, нам также понадобятся 2 файла, допустим contact.php и custom.js .

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

$(".form").submit(function() { var str = $(this).serialize(); $.ajax({ type: "POST", url: "contact.php", data: str, success: function(msg) { if(msg == "ok") { alert("Письмо отправлено"); } else { alert("Ошибка! Возможно вы неправильно заполнили поля."); } } }); return false; });

Теперь разберемся в схеме действий и зачем нам нужны все эти библиотеки и файлы. Когда пользователь нажимает кнопку отправить, у нас происходит событие submit , которое мы пропишем в custom.js и на основе которого получим все данные из формы и передадим их в файл contact.php. Здесь мы еще раз проверяем, не пустые ли у нас поля (дабы избежать очередной возможности спама), производим отправку сообщения на email и уведомляем о результатах пользователя, которые передаются ответом в custom.js.

If (trim($_POST["mfbPhone"]) == "") { echo "false"; } else { $txtname = trim($_POST["mfbName"]); $txtemail = trim($_POST["mfbMail"]); $txtphone = trim($_POST["mfbPhone"]); // от кого $fromMail = "[email protected]"; // Сюда введите Ваш email $emailTo = "[email protected]"; $subject = "Обратная связь"; $subject = "=?utf-8?b?". base64_encode($subject) ."?="; $headers = "From: Пример формы<$fromMail>\n"; $headers .= "Content-type: text/plain; charset="utf-8"\r\n"; $headers .= "MIME-Version: 1.0\r\n"; $headers .= "Date: ". date("D, d M Y h:i:s O") ."\r\n"; // тело письма $body = "Получено письмо с сайта ".$site." \n\nИмя: ".$txtname."\nТелефон: ".$txtphone."\ne-mail: ".$txtemail."\nСообщение: ".$txtmessage; mail($emailTo, $subject, $body, $headers); echo "ok"; }

Это самый элементарный пример работы контактной формы. Есть множество вариантов, как доработать файл проверки на php, создание своих классов и т.д. Но наша задача была создать простой и рабочий пример, который можно использовать на своем сайте.

demo

файлы

Готовые плагины

Так как вы находитесь на блоге WordPress, то наверняка готовы и стремитесь использовать всевозможные плагины, особенно если вы в программировании и верстке полный ламер. И я вас в этом не виню и могу даже один из них представить вашему вниманию для наглядности. Цель этого абзаца не рекомендация, а лишь пример, так как я использовал плагин Contact Form 7 в нескольких проектах.

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


У меня проблем с плагином никогда не возникало и если вам необходимо быстрое и готовое решение, то это именно оно. Если же у вас к форме свои требования по функционалу и дизайну, то лучше использовать первый вариант, который требует знаний в этой отрасли.