Есть проблемы с ранжированием, проект не растет, хотите проверить работу своих специалистов по продвижению? Закажите профессиональный аудит в Семантике
Форма обратной связи на сайте – это механизм для общения между посетителем ресурса и его администраторами.
Больше видео на нашем канале — изучайте интернет-маркетинг с SEMANTICA
Источник: https://semantica.in/blog/forma-obratnoj-svyazi-na-sajte-chto-eto-i-kak-ee-sozdat.html
Содержание
- 1 Сервер для PHP
- 2 Почему используется HTML и PHP?
- 3 Как сделать форму обратной связи на сайте
- 4 Готовим страницу с формой
- 5 Структура кода реализации обратной связи для сайта
- 6 HTML&PHP форма (и скрипт) обратной связи для блога, сайта
- 7 Пишем обработчик формы на PHP
- 8 Правила хорошего тона
- 9 Отправляем PHP-скрипт на сервер
- 10 Установка готовой бесплатной формы обратной связи на сайт
- 11 Что дальше
- 12 Простой скрипт обработки данных формы HTML в PHP скрипте
- 13 Оформление формы обратного звонка для сайта CSS
Сервер для PHP
Для того, чтобы PHP-код исполнялся, нужен какой-то компьютер-исполнитель. Мы называем его сервером — то есть «раздающим». На сервере должна работать программа для PHP, которое отвечает за правильную обработку таких файлов.
Сервер для PHP можно запустить на вашем компьютере, но без дополнительной настройки он будет виден только лично вам. Это нормальная ситуация при разработке продукта, но для реальной боевой задачи нужно будет поднять сервер где-то в интернете.
Когда мы делали проект «Публикуем свою страницу в интернете», то уже использовали сервер (эту услугу нам предоставила хостинговая компания SpaceWeb). Этот же сервер мы можем использовать для нашей сегодняшней задачи, потому что он тоже умеет работать с PHP-файлами:
Если такое есть у вашего хостинга, то вы тоже сможете использовать все возможности PHP.
Источник: https://thecode.media/php-form/
Это интересно: Угадай фильм по кадру: это надо знать
Почему используется HTML и PHP?
Для CRM, таких как WordPress, Joomla и других можно найти различные плагины для установки формы обратной связи для сайта. Однако, что мне не нравится в таких плагинах, так это часто их низкая производительность и замедление сайта из-за загрузки лишнего «мусора» — ненужных стилей и скриптов. Так как эти плагины все равно выдают в результате тот же код HTML, то предлагаю использовать простую, но полноценно функциональную форму, которую можно изменить под свои нужны, например, под обратный звонок с сайта.
Источник: https://dev.asifmoda.com/web-programming/%D1%84%D0%BE%D1%80%D0%BC%D0%B0-%D1%81%D0%B2%D1%8F%D0%B7%D0%B8-%D0%B4%D0%BB%D1%8F-%D1%81%D0%B0%D0%B9%D1%82%D0%B0-%D0%BD%D0%B0-php-html
Как сделать форму обратной связи на сайте
Механизм отправки вопроса на email работает через почтовый сервер, установленный на хостинге. Если письма к вам не приходят, возможно, требуется пересмотреть настройки веб-сервера или проверить ваш почтовый ящик на присутствие в спам-листе.
Структура
Страница обратной связи может состоять из нескольких полей, которые предлагается заполнить посетителю. Поля, отмеченные звездочкой, заполняются обязательно. Если человек пытается отправить форму, не заполнив поля со звездочкой, у него высвечивается сообщение, что форма не может быть отправлена.
Как правило, обязательными к заполнению являются поля: ФИО, телефон, e-mail, ваш вопрос. Самая простая страница коммуникации должна содержать эти поля.
Помимо текстовых полей, страница может содержать элементы выбора.
Пример сервиса обратного звонка
Можно предусмотреть возможность прикрепления документов различных форматов. Для эффективной работы указывайте форматы и вес файлов, которые посетитель может прикрепить к сообщению.
Пример усложненной формы обратной связи для заказа
Последним полем должна быть каптча – защитный код, формирующийся при каждом обновлении страницы, который служит для предотвращения спама. Если вы не установите каптчу, то вскоре устанете очищать базу данных сайта и почтовый ящик от спам-сообщений, рассылаемых различными ботами. В настоящее время боты могут распознавать коды, поэтому устанавливайте надежные каптчи и периодически обновляйте формирующий скрипт.
Где размещать
Обычно применяют два вида размещения формы:
- На отдельной странице в случае, если форма содержит много полей.
- На странице «Контакты» под заголовком «Напишите нам».
Не рекомендуется размещать саму форму на главной странице, и тем более – дублировать ее сквозным способом на всех страницах сайта. Исключение составляет сервис обратного звонка, который только по способу коммуникации можно отнести к вышеуказанному. Плохо работает форма в футере. Исключение составляет лэндинг, цель которого – удержать внимание посетителя и довести его до конца страницы.
Источник: https://semantica.in/blog/forma-obratnoj-svyazi-na-sajte-chto-eto-i-kak-ee-sozdat.html
Готовим страницу с формой
Возьмём стандартный шаблон страницы и наполним его стилями и кодом для формы.
Скопировать код
Код скопирован
Пропишем CSS-стили, чтобы наша страница выглядела опрятно. Забежим немного вперёд и используем в стилях разделы input и textarea:
language: CSS
Скопировать код
Код скопирован
Чтобы сделать форму на странице, мы будем использовать такие
<input> — для ввода имени, почты для связи и темы письма. Они занимают одну строку, нам этого достаточно.
<textarea> — здесь будут писать само сообщение, поэтому нужно будет сделать это поле побольше и пошире.
Ещё мы воспользуемся тегом <form> — он мысленно собирает наши поля в одну форму и помогает управлять ими из одного места. У каждой формы есть свой метод, по которому она работает с данными. Форма может или отправлять данные (post), или получать их (get). Так как нам надо отправить сообщение в PHP-скрипт, будем использовать метод post. Сразу пропишем путь к скрипту на сервере — по этому адресу мы зальём нужный файл на следующем этапе. Этот скрипт, который мы позже напишем, и есть обработчик формы.
Оформим всё в виде кода:
Скопировать код
Код скопирован
У нас уже есть форма, но она пока не работает. Сейчас это исправим.
Источник: https://thecode.media/php-form/
Структура кода реализации обратной связи для сайта
Далее приведен алгоритм работы обратной связи:
- Код HTML формы, вставленный на страницу + CSS стили для его оформления.
- PHP файл, который и выполняет отправку письма или иное действие для регистрации запроса.
Источник: https://dev.asifmoda.com/web-programming/%D1%84%D0%BE%D1%80%D0%BC%D0%B0-%D1%81%D0%B2%D1%8F%D0%B7%D0%B8-%D0%B4%D0%BB%D1%8F-%D1%81%D0%B0%D0%B9%D1%82%D0%B0-%D0%BD%D0%B0-php-html
Это интересно: 1 лучших фильмов, похожих на Спросите любую девушку (1959)
HTML&PHP форма (и скрипт) обратной связи для блога, сайта
Скачать скрипт формы (.zip, 169Кб)
Вот какие формы вы получите:
Обратите внимание, скрипты поставляются с встроенной каптчей. Второй скрипт (Simple Send Mail Order) имеет одно отличие — он одновременно отправляет два письма. Одно заказчику, другое — вам.
Как сделать одну из таких форм обратной связи на сайте? Качайте архив, закачивайте файлы из архива на сайт в каталог /sendmail, настраиваете конфигурационный файл config.php (прописываете свой email, другие настройки) и можно пользоваться — скрипт формы обратной связи готов к работе. Покажу как выглядит конфигурационный файл:
Как видно, с файлом конфигурации формы разберется даже школьник, думаю у вас не возникнет на этот счет вопросов.
Вставка на сайт производится просто:
— можете дать ссылку на /sendmail/index.php
— можете сразу вставить на страницу, при помощи кода
Пример кода:
Код можно найти на сайте, ссылка на который размещена выше.
Форма довольно минималистичная — не всем понравится дизайн «прямиком из девяностых», кому-то не нужна каптча, кому-то не хватает Аякса и красивых сообщений об ошибке. Решение есть.
Источник: https://blogwork.ru/obratnaya-svyaz-dlya-sajta/
Пишем обработчик формы на PHP
Когда мы заполним и отправим форму на нашей странице, произойдёт следующее:
- Браузер соберёт введённые нами данные и скомпонует таким образом, чтобы их можно было передать в программу на PHP. Как бы упакует в посылку.
- В нашей PHP-программе мы сможем получить доступ к этим данным, как бы засосать их в память и хранить в переменных. Можно представить, что мы распакуем посылку и сможем пользоваться её содержимым.
- Скрипт PHP что-то сделает с полученными данными, а потом выплюнет пользователю какой-то ответ. Этот ответ будет отображён в виде веб-страницы в браузере.
Логика работы PHP-программы будет такая:
- получаем значения переменных из тех данных, которые получил обработчик;
- готовим сообщение, где укажем все поля в форме;
- отправляем это сообщение и смотрим на результат выполнения функции отправки;
- если письмо ушло по нужному адресу — пишем, что всё хорошо, если нет — говорим, что что-то не так;
- через 10 секунд после вывода сообщения автоматически переходим на сайт «Кода» ?
Мы специально делаем так, чтобы форма отсылала письма на тот же адрес, который одновременно и адрес отправителя. Это сделано для того, чтобы вы получали эти письма, когда будете тестировать сервис. В рабочем проекте замените переменную $email в функции send() на свой настоящий адрес, чтобы самим получать письма из формы.
language: PHP
Скопировать код
Код скопирован
Источник: https://thecode.media/php-form/
Правила хорошего тона
После заполнения полей и отправки сообщения посетитель должен получить на экране ответ типа «Спасибо за ваш вопрос. Мы ответим вам в течение 1 часа». Если посетитель не получает ответ в течение установленного времени, его расположение к вам резко падает. Факт игнорирования очень неприятен и говорит о том, что сайт не ценит своих клиентов. Обратная связь должна работать, а не собирать мертвые грузы из неотвеченных вопросов посетителей.
Связь через формы – самый быстрый метод коммуникации с клиентами, дающий возможность подготовить детальные ответы и собрать уникальную базу e-mail адресов и телефонных номеров. Помните: вы не имеете право пользоваться этой базой для массовой рассылки и передавать ее сторонней организации. По статистике ваше предложение будет работать, если человек в данный момент ищет именно вашу услугу или товар. Если потенциальный клиент к вам уже обратился, в ваших силах предложить ему сейчас именно то, в чем он заинтересован.
Источник: https://semantica.in/blog/forma-obratnoj-svyazi-na-sajte-chto-eto-i-kak-ee-sozdat.html
Отправляем PHP-скрипт на сервер
Как загружать файлы, мы рассказывали в статье про публикацию сайта в Сети, поэтому просто сделаем всё по той инструкции:
Источник: https://thecode.media/php-form/
Установка готовой бесплатной формы обратной связи на сайт
Итак, на одном сайтов установлена вот такая «кнопка»:
Если нажать на нее, вниз «выпадет» форма обратной связи:
На другом сайте установлена всплывающая (popup) форма обратной связи, выглядит она так:
А вот что придет вам на почту, после того как пользователь оставит свои контактные данные в форме:
Очень удобно. Вот код для работы формы как в первом случае:
<div id=»form»>
<p><a style=»text-decoration: none; border-bottom: 1px dotted; cursor: pointer;» id=»forma0″>Заказать звонок</a></p>
<div id=»forma1″ style=»display:none; background-color: #fff;»>
<script src=»sendmailforms/jquery.maskedinput-1.2.2.min.js» type=»text/javascript»></script>
<link rel=»stylesheet» type=»text/css» href=»sendmailforms/form.css» />
<script src=»sendmailforms/wait_for_call.js» type=»text/javascript»></script>
<script src=»sendmailforms/ajaxupload.js» type=»text/javascript»></script>
<script src=»sendmailforms/upload_file.js» type=»text/javascript»></script>
<div class=»call-me-form» title=»Заказать звонок» button=»Заказать звонок» style=»width: 200px»></div>
</div>
<script>
$(«#forma0»).toggle(function() {
$(«#forma1»).slideDown(«slow»);
}, function() {
$(«#forma1»).slideUp(«slow»);
});
</script>
</div>
Расшифровываю: в скрытом div-блоке подгружается скрипт и все что с ним связано, этот блок при помощи JavaScript открывается и все — можно оставлять свои данные. Преимущество такого подхода — пользователю не нужно ждать, пока там что-то подгрузится еще.
Примерно также работает скрипт и на другом сайте, где форма обратной связи показывается во всплывающем окне.
Приведу содержимое конфиг-файла
Все! Больше ничего нет, остальное (стили) — вручную. Но они и так везде вручную. При этом форма использует Ajax, выводит сообщения об ошибке, а еще можно задать свою собственную маску номеров. Вот скриншоты:
После отправки номера, пользователю увидит ваше сообщение, которое также можно задать.
Скачать скрипт формы обратной связи (заказа обратного звонка) — .zip, 16.4Кб
Это проверенное решение, которым я вполне доволен. Я нашел в этом скрипте для себя несколько преимуществ:
1. Он присылает URL страницы, с которой была отправлена заявка через форму.
2. На одной странице может быть несколько таких форм обратной связи и они никак не будут конфликтовать друг с другом.
3. Форма подгружается не PHP-кодом, а div-блоком — это упрощает ее вставку в любое место сайта на порядок. Можно даже в тексте вставлять, если умеете.
И он тоже позволяет загружать файл, то есть ничем не уступает.
Ну а про онлайн конструкторы и навороченные генераторы скриптов обратной связи — как-нибудь в другой раз. Может заодно еще и формы для WordPress обсудим. Посмотрим.
А комментариях давайте делиться своими наработками и ссылками, раз я уже поделился, теперь ваша очередь. Буду очень рад если вы поделитесь своими проверенными решениями или приведете примеры как сделали форму обратной связи у себя на сайте.
Источник: https://blogwork.ru/obratnaya-svyaz-dlya-sajta/
Что дальше
Дальше как обычно — улучшаем.
- Например, сейчас, если не заполнить поле с темой или адресом, то будет ошибка и письмо не уйдёт. При этом пользователь не будет знать, что же именно он сделал не так. Можно организовать проверку на заполнение полей и выводить нужные сообщения, если что-то не заполнено.
- Всегда можно улучшить безопасность и защитить скрипт от многократных запросов — чтобы никто не абьюзил сервис и не делал из нас спамеров.
- А ещё при отправке мы переходим на страницу обработчика, а потом вообще на другой сайт. Чтобы сделать как у всех, чтобы форма отправлялась без перезагрузки страницы, можно использовать Ajax. Когда-нибудь доберёмся и до него. Подписывайтесь, чтобы не пропустить.
Практику веб‑программирования можно получить в Яндекс.Практикуме
Первый курс — бесплатно.
Попробовать
Источник: https://thecode.media/php-form/
Простой скрипт обработки данных формы HTML в PHP скрипте
Приведем сначала исходный код:
Разберем подробнее
проверяем или используется метод POST
Далее проверяем или были высланы данные с полей ввода
Обратите внимание, что в конструкции название поля совпадает с именем поля в форме . Поэтому на одной странице названия полей должны быть уникальны, иначе они будут переписывать друг друга.
Функция удаляет пробелы в начале и в конце строки. Далее формируем письмо и все что подготовили отправляем функцией .
Источник: https://dev.asifmoda.com/web-programming/%D1%84%D0%BE%D1%80%D0%BC%D0%B0-%D1%81%D0%B2%D1%8F%D0%B7%D0%B8-%D0%B4%D0%BB%D1%8F-%D1%81%D0%B0%D0%B9%D1%82%D0%B0-%D0%BD%D0%B0-php-html
Оформление формы обратного звонка для сайта CSS
Приведем код CSS оформления для формы обратной связи сайта.
Разберем подробнее код.
Что бы упорядочить поля и кнопку , обертываем их в , отображение ставим в и направление отображения столбцом . Для красоты добавляем отступы сверху и снизу на
Подпись и поле ввода обернуты в контейнер :
Для этого дива присвоим отступы сверху и снизу:
Кнопке делаем ширину равной ширине родительского блока и присваиваем — расчет ширины по границе, что бы она не выходила за пределы родительского блока:
Аналогично для подписей и полей ввода:
Настраиваем красивый внешний вид подписей и полей ввода:
Звездочку делаем красной:
Оформляем кнопку :
При наведении на кнопку настраиваем изменение цвета:
Обратите внимание, что иногда эти стили могут быть переопределены другими, которые имеют больший приоритет. Что бы усилить приоритет, просто присвойте форме имя через , например и в CSS файлах тогда обращение идет не через точку, как к классам, а через решетку , например . Тогда достаточно добавить к селекторам в CSS файлах в начало , что бы повысить приоритет правил.
Источник: https://dev.asifmoda.com/web-programming/%D1%84%D0%BE%D1%80%D0%BC%D0%B0-%D1%81%D0%B2%D1%8F%D0%B7%D0%B8-%D0%B4%D0%BB%D1%8F-%D1%81%D0%B0%D0%B9%D1%82%D0%B0-%D0%BD%D0%B0-php-html
Количество использованных доноров: 4
Информация по каждому донору:
- https://thecode.media/php-form/: использовано 5 блоков из 6, кол-во символов 5072 (31%)
- https://semantica.in/blog/forma-obratnoj-svyazi-na-sajte-chto-eto-i-kak-ee-sozdat.html: использовано 3 блоков из 4, кол-во символов 3402 (21%)
- https://blogwork.ru/obratnaya-svyaz-dlya-sajta/: использовано 3 блоков из 5, кол-во символов 5600 (34%)
- https://dev.asifmoda.com/web-programming/%D1%84%D0%BE%D1%80%D0%BC%D0%B0-%D1%81%D0%B2%D1%8F%D0%B7%D0%B8-%D0%B4%D0%BB%D1%8F-%D1%81%D0%B0%D0%B9%D1%82%D0%B0-%D0%BD%D0%B0-php-html: использовано 4 блоков из 8, кол-во символов 2434 (15%)