Przejdź do treści
Wszystkie artykuły

Integracje

Formularz kontaktowy na stronie statycznej bez własnego backendu

Podłącz prawdziwy formularz HTML do ZoraForms i wiedz, czego sam hosting statyczny nie obsługuje.

Strona z HTML i CSS może mieć formularz kontaktowy, ale sam plik HTML nie odbierze danych ani nie zapisze wiadomości. Przeglądarka potrzebuje adresu, do którego wyśle POST. ZoraForms udostępnia taki adres, zapisuje zaakceptowane zgłoszenia w panelu i pozwala skonfigurować ochronę oraz dalszą obsługę bez stawiania własnego serwera.

Co zapewnia hosting statyczny, a czego nie

GitHub Pages, CDN lub prosty hosting plików świetnie serwują HTML, obrazy i JavaScript. Nie tworzą jednak endpointu do odbioru formularzy, kolejki zgłoszeń ani walidacji po stronie serwera. Atrybut action wskazuje miejsce wysyłki; nie jest mechanizmem, który zmienia katalog z plikami w aplikację backendową.

To ważne także przy wyborze skrzynki. Link mailto: otwiera program pocztowy użytkownika i pozwala mu zrezygnować lub zmienić treść. Nie daje pewności, że wiadomość została wysłana, nie zapisuje zgłoszenia w panelu i nie działa wygodnie, gdy użytkownik nie ma skonfigurowanej aplikacji pocztowej. Formularz POST zbiera dane w formularzu, a dostarczenie może być osobnym etapem.

  • Ustal publiczny adres strony, na której formularz będzie osadzony.
  • Zdecyduj, które pola są potrzebne do pierwszej odpowiedzi.
  • Wybierz usługę odbierającą POST zamiast liczyć na sam hosting.

Podłącz formularz do ZoraForms

W panelu dodaj witrynę, utwórz formularz i w zakładce Integracja skopiuj jego aktualny publiczny adres. Wklej go do action, ustaw method na POST i nadaj name każdemu polu, które ma trafić do zgłoszenia. Publiczny identyfikator jest przeznaczony do HTML; nie wstawiaj tam sekretów ani haseł.

Poniższy kod to punkt wyjścia dla formularza bez dodatkowych zabezpieczeń. Gdy korzystasz z CAPTCHA, honeypotu lub minimalnego czasu wypełniania, pobierz pełny kod z panelu po zapisaniu ustawień. Zawiera pola potrzebne do weryfikacji.

Formularz HTML
<form action="https://forms.example.com/f/TWOJ_PUBLIC_ID" method="POST">
  <label>E-mail <input name="email" type="email" required /></label>
  <label>Wiadomość <textarea name="message" required></textarea></label>
  <button type="submit">Wyślij</button>
</form>

Sprawdź origin i pierwsze zgłoszenie

W ustawieniach formularza wpisz dozwolony origin strony, na przykład https://example.com. Origin obejmuje protokół i host, więc https://www.example.com oraz https://example.com są różne. To ustawienie pomaga wykryć wysyłkę z nieoczekiwanej strony, ale nie zastępuje ochrony przed spamem ani uwierzytelnienia użytkownika.

Po publikacji wypełnij formularz jak zwykły odwiedzający. Otwórz Zgłoszenia i sprawdź, czy widzisz oczekiwane nazwy pól oraz wynik ochrony. Jeżeli formularz ma przekierować użytkownika po sukcesie albo pokazać komunikat bez przeładowania, wybierz w Integracji wygenerowany wariant HTML lub fetch odpowiedni dla aktualnej konfiguracji.

  • Sprawdź adres action i method="POST".
  • Sprawdź name przy polach e-maila i wiadomości.
  • Dodaj dokładny origin produkcyjnej strony.
  • Wyślij test i zobacz go w panelu.

Zacznij prosto, ale pilnuj limitu

Plan Free obejmuje jedną witrynę, jeden formularz i do 100 zgłoszeń miesięcznie. Aby zacząć przyjmować zgłoszenia w tym planie, trzeba potwierdzić kontrolę nad publiczną domeną rekordem DNS TXT. Witrynę i formularz można przygotować wcześniej, lecz nowe zgłoszenia będą przyjmowane dopiero po poprawnym sprawdzeniu rekordu.

Po działającym teście możesz dodać CAPTCHA, UTM lub webhook. Zmiana ochrony wymaga świeżego kodu integracji, a kampanię warto poprzedzić kontrolą bieżącego użycia. ZoraForms nie udostępnia uploadów plików ani wspólnej skrzynki zespołu; formularz najlepiej traktować jako uporządkowany kanał nowych zgłoszeń, a nie pełny system obsługi poczty.

Przydatne odnośniki

Formularz kontaktowy na stronie statycznej bez własnego backendu · ZoraForms Blog