0Pricing
PHP Academy · Lekcja

Tworzenie formularza kontaktowego

Zbuduj formularz kontaktowy wysyłający wiadomości e-mailem

Tworzenie formularza kontaktowego to bezpłatna lekcja PHP Academy na CoddyKit. To lekcja 2 z 2. Możesz przeczytać całą lekcję poniżej za darmo — a potem ćwiczyć ją interaktywnie w przeglądarce z wbudowanym edytorem kodu i tutorem AI dostępnym 24/7. To część ścieżki edukacyjnej PHP Academy, a Twój postęp synchronizuje się między webem a aplikacją CoddyKit. Kurs PHP Academy zawiera 2 lekcji w sumie.

Wprowadzenie do projektu formularza kontaktowego

Tworzenie formularza kontaktowego

W tej lekcji dotyczącej tworzenia formularza kontaktowego nauczysz się budować formularz, który pozwala użytkownikom wysyłać wiadomości pocztą elektroniczną. Zaczynajmy!

Tworzenie formularza kontaktowego — ilustracja 1

Konfigurowanie projektu

Konfigurowanie projektu

Przed rozpoczęciem upewnij się, że masz:

  • Serwer internetowy, taki jak XAMPP lub WAMP.
  • Edytor tekstu lub środowisko IDE, na przykład VS Code.
  • Plik o nazwie contact.php w katalogu projektu.
  • Włączoną funkcję mail() języka PHP, wymaganą do wysyłania wiadomości e-mail.

Wskazówka: Podczas testowania lokalnego może być konieczne skonfigurowanie ustawień serwera pocztowego.

Tworzenie podstawowego formularza HTML

Tworzenie podstawowego formularza HTML

Najpierw utwórz strukturę HTML formularza kontaktowego. Przykład:

Najważniejsza informacja: Użyj atrybutu required, aby upewnić się, że przed wysłaniem formularza wszystkie pola zostaną wypełnione.

<!DOCTYPE html>
<html lang="en">
<head>
  <meta charset="UTF-8">
  <meta name="viewport" content="width=device-width, initial-scale=1.0">
  <title>Contact Form</title>
</head>
<body>
  <h1>Contact Us</h1>
  <form action="contact.php" method="post">
    <label for="name">Name:</label><br>
    <input type="text" id="name" name="name" required><br><br>
    
    <label for="email">Email:</label><br>
    <input type="email" id="email" name="email" required><br><br>
    
    <label for="message">Message:</label><br>
    <textarea id="message" name="message" rows="5" required></textarea><br><br>
    
    <button type="submit" name="submit">Send Message</button>
  </form>
</body>
</html>

Przetwarzanie danych formularza

Przetwarzanie danych formularza

W pliku contact.php obsłuż przesłanie formularza. Przykład:

Wskazówka: Użyj funkcji htmlspecialchars(), aby zapobiegać atakom XSS przez kodowanie znaków HTML.

<?php
  if (isset($_POST['submit'])) {
    $name = htmlspecialchars($_POST['name']);
    $email = htmlspecialchars($_POST['email']);
    $message = htmlspecialchars($_POST['message']);

    echo "Name: $name<br>";
    echo "Email: $email<br>";
    echo "Message: $message<br>";
  }
?>

Sprawdzanie poprawności danych wejściowych

Sprawdzanie poprawności danych wejściowych

Przed przetworzeniem sprawdź poprawność danych wejściowych, aby upewnić się, że spełniają wymagania. Przykład:

Najważniejsza informacja: Zawsze sprawdzaj poprawność danych wprowadzonych przez użytkownika, aby uniknąć nieprawidłowych lub złośliwych danych.

<?php
  if (isset($_POST['submit'])) {
    if (!filter_var($_POST['email'], FILTER_VALIDATE_EMAIL)) {
      echo "Invalid email address.";
      exit;
    }

    $name = htmlspecialchars($_POST['name']);
    $email = htmlspecialchars($_POST['email']);
    $message = htmlspecialchars($_POST['message']);

    echo "Valid input. Processing...";
  }
?>

Wysyłanie wiadomości e-mail

Wysyłanie wiadomości e-mail

Użyj funkcji mail() języka PHP, aby wysłać dane formularza na adres e-mail. Przykład:

Wskazówka: Użyj prawidłowego adresu From, aby uniknąć problemów z dostarczaniem wiadomości e-mail.

<?php
  if (isset($_POST['submit'])) {
    $to = "admin@example.com"; // Replace with your email
    $subject = "New Contact Form Submission";
    $message = "Name: $name\nEmail: $email\nMessage:\n$message";
    $headers = "From: $email";

    if (mail($to, $subject, $message, $headers)) {
      echo "Message sent successfully!";
    } else {
      echo "Failed to send the message.";
    }
  }
?>

Rozbudowa formularza

Rozbudowa formularza

Można dodać następujące ulepszenia:

  • Wyświetlaj komunikaty o powodzeniu lub błędzie bezpośrednio w formularzu.
  • Ostylluj formularz za pomocą CSS, aby poprawić interfejs użytkownika.
  • Zaimplementuj CAPTCHA, aby zapobiegać wysyłaniu spamu.

Najważniejsza informacja: Ulepszenia poprawiają wygodę użytkowania i bezpieczeństwo.

Debugowanie problemów z pocztą e-mail

Debugowanie problemów z pocztą e-mail

Jeśli wiadomość e-mail nie jest wysyłana, sprawdź następujące kwestie:

  • Upewnij się, że funkcja mail() języka PHP jest włączona.
  • Sprawdź, czy adres e-mail From jest prawidłowy.
  • Sprawdź dzienniki pocztowe serwera pod kątem błędów.

Wskazówka: Rozważ użycie biblioteki, takiej jak PHPMailer, aby korzystać z zaawansowanych funkcji obsługi poczty e-mail.

Świetna robota!

Świetna robota!

Gratulacje! Udało się zbudować funkcjonalny formularz kontaktowy w PHP. Nauczono się tworzyć formularz, przetwarzać jego dane, sprawdzać poprawność danych wejściowych i wysyłać wiadomości e-mail. W następnej lekcji zostanie zbudowany kolejny ciekawy projekt, który pozwoli jeszcze lepiej opanować PHP. Kodujmy dalej!

Tworzenie formularza kontaktowego — ilustracja 10

Często zadawane pytania

Czy lekcja „Tworzenie formularza kontaktowego” jest bezpłatna?

Tak — pełny tekst „Tworzenie formularza kontaktowego” jest dostępny za darmo tutaj w sieci. Aby ćwiczyć ją interaktywnie (wbudowany edytor kodu i tutor AI dostępny 24/7) i odblokować resztę kursu PHP Academy, przejdź na CoddyKit PRO. Kurs PHP Academy zawiera 2 lekcji w sumie.

Co nauczysz się w „Tworzenie formularza kontaktowego”?

Zbuduj formularz kontaktowy wysyłający wiadomości e-mailem Ćwiczysz PHP Academy z praktycznym kodem, który uruchamiasz bezpośrednio w przeglądarce, a tutor AI dostępny 24/7 odpowiada na Twoje pytania podczas pracy nad lekcją.

Czy potrzebuję doświadczenia, aby zacząć PHP Academy?

Nie wymagamy żadnego doświadczenia. PHP Academy w CoddyKit jest strukturyzowany dla początkujących i zaawansowanych użytkowników, więc możesz zacząć tutaj lub od początku i uczyć się w swoim tempie. To lekcja 2 z 2.

Ile czasu zajmuje lekcja „Tworzenie formularza kontaktowego”?

Większość lekcji CoddyKit trwa około 5–10 minut. Każda lekcja to mały, interaktywny krok, dzięki czemu robisz systematyczne postępy i zawsze wracasz dokładnie do tego samego miejsca — na webie i w aplikacji.

Czy mogę pisać i uruchamiać kod w tej lekcji PHP Academy?

Tak. Każda lekcja PHP Academy zawiera wbudowany edytor kodu, więc piszesz i uruchamiasz prawdziwy kod bezpośrednio w przeglądarce i od razu otrzymujesz sprzężenie zwrotne od AI — bez konfiguracji na komputerze.

Wszystkie lekcje w tym kursie

  1. Tworzenie prostej listy zadań
  2. Tworzenie formularza kontaktowego
← Powrót do PHP Academy