Dalej•LEKCJA 19 / 26

Formularze GET i POST

Kurs PHP · Wyjaśnienie, przykłady, oczekiwany wynik i ćwiczenie.

PHP może odczytywać dane przesłane z formularza HTML.

Jak to działa?

$_GET i $_POST to tablice z danymi żądania. Nigdy nie zakładaj, że dane użytkownika są bezpieczne. Przy wyświetlaniu tekstu w HTML stosuj htmlspecialchars().

Przykład 1 — poznaj zapis

<?php
// Formularz wysyła pole "name" metodą POST.
$name = trim((string) ($_POST["name"] ?? ""));

echo htmlspecialchars($name, ENT_QUOTES, "UTF-8");

Tekst z formularza zostanie bezpiecznie wyświetlony w kontekście HTML.

Przeczytaj kod linijka po linijce

  1. $name = trim((string) ($_POST["name"] ?? ""));Tworzymy lub aktualizujemy zmienną, pole albo przypisanie.
  2. echo htmlspecialchars($name, ENT_QUOTES, "UTF-8");Wyświetlamy wartość, aby sprawdzić efekt działania programu.
Oczekiwany wynik / efektpo uruchomieniu przykładu
Zawartość pola name przesłana metodą POST, po ucieczce znaków HTML.

Przykład 2 — podobny problem, inne dane

Teraz przyjrzyj się drugiemu przykładowi. Zwróć uwagę na to, co zmieniło się w kodzie, a co w wyniku. Spróbuj przewidzieć rezultat przed przeczytaniem odpowiedzi.

<?php
// Formularz: <input name="city">
$city = trim((string) ($_POST["city"] ?? ""));
echo htmlspecialchars($city, ENT_QUOTES, "UTF-8");
Wynik drugiego przykładupo uruchomieniu przykładu
Po wysłaniu formularza: bezpiecznie wyświetla wpisane miasto.
Sprawdź, czy rozumiesz

Wróć do pierwszego przykładu, zmień jedną wartość i spróbuj samodzielnie przewidzieć wynik. Następnie uruchom kod i porównaj rezultat. W ten sposób nauczysz się nie tylko przepisywać instrukcje, ale rozumieć ich działanie.

Spróbuj samodzielnie

Dodaj formularz z polem name i atrybutem method="post".

To już koniec tej lekcji.

Jeśli rozumiesz przykład, oznacz lekcję jako ukończoną i przejdź dalej.