Obsługa formularzy to jedna z podstawowych umiejętności, którą musi posiadać każdy programista PHP. Formularze HTML są używane do zbierania danych od użytkownika, a PHP umożliwia przetwarzanie i reagowanie na te dane w sposób dynamiczny. W tej lekcji dowiesz się, jak stworzyć prosty formularz w HTML i jak obsłużyć jego dane w PHP.
Tworzenie formularza HTML
Zacznijmy od stworzenia prostego formularza HTML, który umożliwi użytkownikowi wprowadzenie swojego imienia. Formularz będzie składał się z jednego pola tekstowego i przycisku wysyłającego formularz.
<!-- Formularz HTML -->
<form action="handle_form.php" method="post">
<label for="name">Imię:</label>
<input type="text" id="name" name="name">
<input type="submit" value="Wyślij">
</form>
W tym przykładzie, action
określa plik, do którego dane formularza będą wysyłane, a method
określa metodę HTTP używaną do wysyłania danych (post
lub get
).
Obsługa formularza w PHP
Gdy formularz jest wysyłany, dane można odebrać i przetworzyć w PHP. Poniżej znajduje się przykładowy skrypt PHP, który pokazuje, jak odczytać dane wysłane z formularza.
<?php
// Sprawdzenie, czy formularz został wysłany
if ($_SERVER["REQUEST_METHOD"] == "POST") {
// Odebranie danych z formularza
$name = htmlspecialchars($_POST['name']);
// Wyświetlenie danych
echo "<h3>Przetworzone dane formularza</h3>";
echo "<p>Witaj, $name!</p>";
} else {
// Jeśli formularz nie został wysłany, wyświetl komunikat
echo "<p>Formularz nie został wysłany.</p>";
}
?>
W tym kodzie, $_POST['name']
pozwala na odczytanie wartości pola name
z formularza. Funkcja htmlspecialchars
jest używana do konwersji specjalnych znaków HTML, co zapobiega atakom typu Cross-Site Scripting (XSS).
Bezpieczeństwo
Podczas pracy z formularzami bardzo ważne jest, aby pamiętać o bezpieczeństwie. Używanie htmlspecialchars
do czyszczenia danych wejściowych to tylko jedna z wielu praktyk, które pomagają zapewnić bezpieczeństwo aplikacji webowej.
Podsumowanie
W tej lekcji nauczyłeś się, jak tworzyć formularze w HTML i obsługiwać ich dane w PHP. Przedstawione przykłady pokazują podstawowe operacje, ale formularze mogą być znacznie bardziej złożone i umożliwiać zbieranie różnych typów danych, takich jak tekst, liczby, pliki itp. Ważne jest, aby zawsze przetwarzać dane formularzy z uwzględnieniem najlepszych praktyk bezpieczeństwa.