INF.03Backend & PHP
Metody przesyłania danych ($_GET vs $_POST)
Podstawowe metody protokołu HTTP używane do przekazywania danych z formularzy HTML do skryptów backendowych.
Porównanie metod GET i POST:
| Cecha | Metoda GET ($_GET) | Metoda POST ($_POST) |
|---|---|---|
| Przekazywanie danych | W pasku adresu URL (?imie=Jan&wiek=20) | W ciele żądania HTTP (Request Body) |
| Widoczność | Jawna, widoczna dla użytkownika | Niewidoczna w pasku adresu URL |
| Limit rozmiaru | Ograniczony (zazwyczaj do ~2048 znaków) | Brak sztywnego limitu (konfigurowalny w php.ini) |
| Zastosowanie | Pobieranie, wyszukiwanie, filtrowanie | Logowanie, hasła, modyfikacja bazy, pliki |
| Idempotentność | Tak (można dodać do zakładek) | Nie (ponowne wysłanie wyświetla monit) |
PHP
<?php
// Odbiór danych z metody POST:
if ($_SERVER['REQUEST_METHOD'] === 'POST') {
$login = isset($_POST['login']) ? trim($_POST['login']) : '';
$haslo = $_POST['haslo'] ?? '';
echo "Próba logowania użytkownika: " . htmlspecialchars($login);
}Najczęstsze pułapki na egzaminie INF.03:
- Nigdy nie przesyłaj haseł ani danych poufnych metodą GET!
- W formularzu HTML wielkość liter ma znaczenie:
method="POST"lubmethod="GET".
Chcesz sprawdzić to pojęcie w praktyce?
Przeszukaj pytania z oficjalnych arkuszy CKE powiązane z hasłem Metody przesyłania danych ($_GET vs $_POST) lub rozpocznij trening.