Если не работает форма на сайте, проблема обычно заметна не сразу: посетитель отправляет заявку, видит сообщение об успехе, а письмо не приходит. Для бизнеса это неприятная ситуация, потому что сайт может выглядеть исправным, но заявки фактически теряются.
Чаще всего причина не в одной кнопке. Форма может ломаться из-за почты, SMTP, PHP, JavaScript, настроек CMS, защиты от спама, ошибок после обновления или изменений на сервере. Поэтому правильный подход — не менять всё подряд, а быстро сузить место поломки.
Коротко: сначала проверьте, появляется ли заявка в админке сайта, уходит ли письмо, нет ли ошибок в браузере и не попадали ли письма в спам. Если форма связана с оплатой, CRM, Telegram, почтой домена или серверными скриптами, лучше не править настройки вслепую.
Коротко: что делать, если форма на сайте не работает
- Отправьте тестовую заявку с телефона и компьютера.
- Проверьте папку «Спам» и другие вкладки почтового ящика.
- Посмотрите, сохраняется ли заявка в админке CMS или CRM.
- Проверьте, не менялись ли недавно DNS, хостинг, PHP, плагины или шаблон.
- Если форма выдаёт ошибку, скопируйте точный текст ошибки или сделайте скриншот.
- Если форма просто «молчит», проверьте консоль браузера и серверные логи.
Почему форма на сайте может не отправлять заявки
У формы обычно есть несколько участков: HTML-разметка, JavaScript-проверка, обработчик на сервере, отправка письма, сохранение заявки и интеграция с внешним сервисом. Ошибка на любом участке может привести к тому, что пользователь отправил форму, а вы ничего не получили.
Не настроена отправка почты
Многие сайты пытаются отправлять письма через стандартную функцию PHP mail. На части хостингов она ограничена, работает нестабильно или письма уходят без нормальной авторизации домена. В результате почтовые сервисы могут отклонять такие письма или отправлять их в спам.
Проблемы с SMTP
Если форма отправляет письма через SMTP, проверьте логин, пароль, порт, тип шифрования и доступность почтового сервера. Частая ситуация: пароль от почты сменили, включили двухфакторную авторизацию или почтовый сервис запретил обычный пароль для приложений.
Ошибки после обновления сайта
Форма может перестать работать после обновления CMS, темы, плагинов, версии PHP или переноса сайта. Особенно часто это встречается на WordPress, OpenCart, Bitrix, Tilda и самописных сайтах, где форма зависит от конкретного обработчика или внешней интеграции.
JavaScript мешает отправке
Иногда кнопка нажимается, но запрос не уходит. Причина может быть в ошибке JavaScript, конфликте скриптов, маске телефона, капче или валидации полей. Пользователь видит форму, но отправка блокируется ещё до обращения к серверу.
Заявка уходит, но не туда
Проверьте адрес получателя. После правок на сайте письмо может уходить на старую почту, тестовый адрес разработчика, адрес администратора CMS или в CRM, к которой уже нет доступа.
Что можно проверить самостоятельно
Начните с простых проверок. Они не требуют доступа к коду и помогают быстро понять, где искать причину.
- Заполните форму разными данными и с разных устройств.
- Проверьте, появляется ли сообщение «заявка отправлена».
- Посмотрите входящие, спам и фильтры почтового ящика.
- Проверьте, не переполнен ли почтовый ящик.
- Откройте настройки формы в CMS и проверьте email получателя.
- Если есть CRM, проверьте, создаётся ли лид внутри CRM.
- Уточните, не менялись ли недавно DNS, MX-записи, хостинг или почта домена.
Чего лучше не делать
Не стоит сразу отключать все плагины, менять DNS, удалять капчу, править PHP-файлы или переписывать форму без резервной копии. Такие действия могут сломать не только форму, но и другие части сайта.
Если форма связана с заказом, оплатой, личным кабинетом, CRM или рассылкой, лучше сначала зафиксировать текущее состояние: сделать скриншоты настроек, сохранить список плагинов, проверить логи и только потом вносить изменения.
Когда нужен программист
Программист нужен, если форма не отправляет письма после базовых проверок, ошибка повторяется у разных пользователей или заявка важна для продаж. Также лучше обратиться за помощью, если проблема появилась после переноса сайта, обновления CMS, смены PHP, настройки DNS или подключения нового почтового сервиса.
Типовые задачи, которые можно быстро проверить и исправить:
- настроить отправку формы через SMTP;
- проверить PHP-обработчик формы;
- исправить ошибку JavaScript при отправке;
- настроить SPF, DKIM и DMARC для почты домена;
- проверить интеграцию формы с CRM или Telegram;
- исправить форму WordPress, Tilda, OpenCart, Bitrix или самописного сайта;
- найти, почему письмо уходит в спам или не доходит до получателя.
Как я могу помочь
Я могу проверить форму, почту, SMTP, DNS, серверные логи и код обработчика. Если проблема простая, её часто можно исправить быстро: заменить способ отправки писем, поправить настройки формы, обновить адрес получателя или исправить ошибку в обработчике.
Если проблема глубже, я объясню, где именно сбой: в форме, почте, сервере, CMS, CRM или внешнем сервисе. Это важно, чтобы не платить за лишние работы и не ломать сайт случайными правками.
Сроки и ориентиры
Быстрая диагностика обычно занимает от 30 минут до пары часов. Простую настройку SMTP, исправление адреса получателя или правку обработчика часто можно сделать в тот же день. Если проблема связана с CRM, сервером, DNS или старым кодом, сначала лучше оценить доступы и риски.
| Ситуация | Что проверяется | Результат |
|---|---|---|
| Письма не приходят | SMTP, PHP mail, спам, DNS | Понятно, почему заявка не доходит |
| Кнопка не отправляет форму | JavaScript, валидация, капча | Форма снова отправляется |
| Заявки не попадают в CRM | Webhook, API, токены, логи | Интеграция восстанавливается |
| Форма сломалась после обновления | CMS, плагины, PHP, шаблон | Находится конфликт или ошибка |
Что подготовить перед обращением
- Ссылку на страницу с формой.
- Описание: что должно происходить и что происходит сейчас.
- Скриншот ошибки, если она видна.
- Доступ в админку сайта или CMS, если он есть.
- Доступ к почте, SMTP или настройкам домена, если проблема с письмами.
- Информацию о недавних изменениях: перенос, обновление, смена DNS, правки в коде.
FAQ
Почему форма пишет, что заявка отправлена, но письмо не приходит?
Так бывает, если сайт успешно обработал форму, но письмо не прошло дальше: почтовый сервер отклонил отправку, письмо попало в спам, неверно указан получатель или не настроена авторизация домена.
Можно ли исправить форму без доступа к серверу?
Иногда можно, если проблема в настройках CMS или плагина. Но для проверки PHP-ошибок, логов, SMTP и обработчика формы часто нужен доступ к хостингу или серверу.
Почему форма перестала работать после обновления WordPress?
После обновления может измениться версия PHP, поведение плагина, тема или настройки безопасности. Нужно проверить совместимость плагинов, ошибки JavaScript и серверные логи.
Что лучше: PHP mail или SMTP?
Для рабочих заявок лучше SMTP. Он надёжнее, позволяет авторизовать отправку и снижает риск попадания писем в спам, особенно если дополнительно настроены SPF, DKIM и DMARC.
Можно ли быстро понять, теряются ли заявки?
Да. Нужно отправить тестовые заявки, проверить почту, админку сайта, CRM и логи. После этого обычно понятно, на каком участке форма перестаёт работать.
Итог
Если не работает форма на сайте, не стоит гадать и менять настройки вслепую. Лучше быстро проверить путь заявки: форма, обработчик, почта, SMTP, DNS, CRM и серверные логи. Так можно понять реальную причину и восстановить заявки без лишнего риска для сайта.
Если хотите, я могу посмотреть вашу форму, найти причину и сказать, что именно нужно исправить: настройки, почту, код, CMS или интеграцию.
Если форма отправляется, но заявок всё равно нет
Бывает, что форма визуально работает, но лиды теряются дальше: в почте, CRM, Telegram, аналитике или серверном обработчике. Для такой ситуации есть отдельный разбор: не приходят заявки с сайта.