Nefunkční formulář se skoro nikdy neprojeví chybovou hláškou. Návštěvník uvidí poděkování, odejde a je přesvědčený, že jste jeho poptávku dostali. Vy zatím netušíte, že vám něco uniklo. Tady jsou příčiny, se kterými se v praxi setkáváme nejčastěji.

1. Web odesílá poštu přes PHP mail() místo SMTP

Nejčastější příčina u WordPressu. Zprávy odchází z adresy, kterou nikdo neautorizoval, a poštovní servery je zahodí ještě před doručením. Řešením je odesílání přes ověřený SMTP účet.

2. Zprávy padají do spamu

Zkontrolujte složku Nevyžádaná pošta i karanténu na straně poskytovatele. Když tam zprávy jsou, chybí obvykle správné SPF a DKIM záznamy.

3. Chybný cíl doručení

Kolega odešel z firmy, jeho schránka byla zrušená, ale formulář na ni pořád posílá. Ověřte, na jakou adresu formulář reálně doručuje, ne na jakou doručoval loni.

4. Aktualizace pluginu nebo šablony

Po aktualizaci se změní název pole, zmizí odesílací akce nebo se rozbije JavaScript. Formulář dál vypadá funkčně, ale data nikam neodchází.

5. Antispamová ochrana blokuje reálné lidi

Přísně nastavená reCAPTCHA v3 nebo honeypot může vyhodnotit běžného zákazníka jako robota a odeslání tiše zahodit.

6. Vypršel certifikát nebo se změnila adresa

Formulář odesílá na starou URL, přesměrování zahodí data z POST požadavku a zpráva se ztratí po cestě.

7. Plná schránka nebo limit odeslaných zpráv

Hostingy mají hodinové limity. Když je web překročí, další zprávy se neodešlou vůbec.

8. Filtry a pravidla v poště

Pravidlo, které kdysi třídilo poptávky do složky, může zprávy rovnou archivovat nebo mazat.

9. Chyba v JavaScriptu na stránce

Konfliktní skript zablokuje odeslání dřív, než se vůbec spustí. Pozná se v konzoli prohlížeče, běžný návštěvník nemá šanci nic zjistit.

Jak zjistit, která příčina je vaše

  • Odešlete formulář z jiné sítě a jiného zařízení, ne z firemního počítače.
  • Zkuste jinou cílovou adresu, ideálně u jiného poskytovatele pošty.
  • Podívejte se do logu odeslané pošty na hostingu.
  • Zopakujte test několik dní po sobě, výpadky bývají nahodilé.

Ruční kontrola odhalí problém jen ve chvíli, kdy ji zrovna děláte. Proto formuláře testujeme automaticky několikrát denně a při první neúspěšné kontrole posíláme upozornění i se snímkem obrazovky.