Przejdź do treści głównej
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:

CechaMetoda GET ($_GET)Metoda POST ($_POST)
Przekazywanie danychW pasku adresu URL (?imie=Jan&wiek=20)W ciele żądania HTTP (Request Body)
WidocznośćJawna, widoczna dla użytkownikaNiewidoczna w pasku adresu URL
Limit rozmiaruOgraniczony (zazwyczaj do ~2048 znaków)Brak sztywnego limitu (konfigurowalny w php.ini)
ZastosowaniePobieranie, wyszukiwanie, filtrowanieLogowanie, 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" lub method="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.