Przejdź do głównej treści
  1. Strona główna
  2. Słownik
  3. INF.03
  4. Metoda POST w HTTP

Metoda POST w HTTP

Słownik kwalifikacji INF.03 - Tworzenie i administrowanie stronami i aplikacjami internetowymi oraz bazami danych

POST to metoda protokołu HTTP używana najczęściej do wysyłania danych z formularzy HTML do serwera. Dane nie są dopisywane do adresu URL, lecz przesyłane w treści żądania HTTP.

Cechy metody POST

  • dane formularza nie są widoczne bezpośrednio w pasku adresu przeglądarki,
  • nadaje się do przesyłania większej ilości danych niż GET,
  • jest typowo używana przy logowaniu, rejestracji, zamówieniach, komentarzach i formularzach kontaktowych,
  • żądanie POST zwykle zmienia stan aplikacji, np. zapisuje dane w bazie.

Przykład formularza HTML

<form action="logowanie.php" method="post">
  <input type="text" name="login">
  <input type="password" name="haslo">
  <button type="submit">Zaloguj</button>
</form>

W PHP dane z takiego formularza można odczytać przez tablicę $_POST:

$login = $_POST['login'];
$haslo = $_POST['haslo'];

POST a bezpieczeństwo

Metoda POST jest lepsza od GET dla danych poufnych, ponieważ nie pokazuje danych w adresie URL, historii przeglądarki ani zakładkach. Nie oznacza to jednak, że sama metoda POST szyfruje dane.

Aby bezpiecznie przesyłać hasła, numery telefonów czy dane kart płatniczych, strona powinna działać przez HTTPS, czyli z użyciem certyfikatu SSL/TLS.

Ważne na egzaminie

Jeżeli w pytaniu porównywane są GET i POST, to POST wybiera się wtedy, gdy dane nie powinny być widoczne w adresie URL, np. przy formularzu logowania.