Нашел в интернете интересный скрипт, который позволяет создавать легко ajax обработчики - в принципе ничего нового, но идея мне понравилась. В данном скрипте было много недостатков, поэтому я улучшил его по максимому и хочу представить готовое решение, с помощью которого вы легко сможете создать бесконечное количество ajax форм обратной связи или просто php обработчиков на ajax.
В изначальном скрипте не был приведен внешний вид формы в порядке - исправил, а также не было проверок на заполнение пользователем обязательных полей, что очень важно - также исправил + по мелочам добавил всяких плюшек.
Скачать архив
ajax формы
dfghg1 dfghg2 dfghg3
Установка
1. Скопируйте код формы из index.htm, начиная с 18 строки и до конца к себе на сайт. Внимание - если у вас подключена библиотека JQuery, то не подключайте jquery-1.9.1.min.js
2. Загрузите form.php, например, в корень сайта и правильно поставьте пути к jquery-1.9.1.min.js (если подключили его) и form.php (если корень сайта - путь: ./form.php). Если путь к form.php выставите неправильно - будет писать при отправке формы "Ошибка при отправке формы".
3. form.php - настройки отправки почты $to - кому придет письмо, $from - от кого
Возможности ajax формы
- Возможность устанавливать бесконечное количество форм без конфликтов друг с другом
- Возможность легко менять/добавлять поля для отправки на php обработчик за счет serialize
- Проверка на заполненность обязательных полей
Режимы работы формы
1. Режим отправки письма
а. Добавить новое поле - добавить input внутри нужной form и учесть его в php обработчике - если поле обязательно к заполнению добавить yourbest="true"
б. Добавить новую форму - дублировать код формы .yourajaxforma1, где заменить id="FORM_ID" и id="OTVET_FORMI" на новые, если нужно указать новый обработчик php, то и путь в onclick="AjaxFormRequest('OTVET_FORMI', 'FORM_ID', 'form.php')"
2. Режим ajax обработки
В обработчике php написать любые действия, которые возвратятся в div с id="OTVET_FORMI"