KWALIFIKACJA INF3 - STYCZEŃ 2024

PYTANIE NR 35.
W kodzie HTML zdefiniowano formularz, który wysyła dane do pliku formularz.php. Po wciśnięciu przycisku typu submit przeglądarka przechodzi do przedstawionego adresu.
Na podstawie podanego adresu można powiedzieć, że dane do pliku formularz.php zostały przesłane metodą
Ilustracja przedstawia fragment adresu URL, który jest częścią kodu HTML zdefiniowanego formularza.
A.
B.
C.
D.
Wyjaśnienie poprawnej odpowiedzi:
Metoda GET przesyła dane formularza przez dopisanie ich do adresu URL jako parametry zapytania (zwykle po znaku "?"). Skoro po kliknięciu submit przeglądarka przechodzi do widocznego adresu zawierającego parametry, oznacza to wysłanie danych do formularz.php metodą GET, a nie POST (który przenosi dane w treści żądania).

Pełne wyjaśnienie:

W formularzach HTML sposób przesyłania danych do zasobu wskazanego w action zależy od atrybutu method. Najczęściej spotyka się dwie metody: GET i POST.

Odpowiedź "GET" jest poprawna, gdy po wysłaniu formularza w pasku adresu przeglądarki widać pełny adres do pliku (np. formularz.php) z dopisanymi parametrami w postaci par klucz=wartość. Taki zapis nazywa się query string i zwykle zaczyna się od znaku "?". W praktyce oznacza to, że dane zostały dołączone do URL, co jest charakterystyczne dla metody GET.

Odpowiedź "POST" jest błędna w tej sytuacji, ponieważ przy POST dane formularza są przesyłane w treści żądania HTTP, a nie jako część adresu. Adres w pasku przeglądarki zazwyczaj nie ujawnia wtedy pól formularza (nie pojawia się rozbudowany ciąg parametrów po "?").

Odpowiedź "COOKIE" jest niepoprawna, bo pliki cookie nie są metodą wysyłania formularza. Cookie to mechanizm przechowywania danych po stronie przeglądarki i przesyłania ich w nagłówkach HTTP przy kolejnych żądaniach, niezależnie od tego, czy formularz używa GET czy POST.

Odpowiedź "SESSION" również jest błędna, bo sesja (session) to mechanizm utrzymywania stanu po stronie serwera (często identyfikowany przez cookie z identyfikatorem sesji). Nie jest to metoda przesłania danych formularza i nie wynika bezpośrednio z postaci adresu URL po kliknięciu submit.

Wskazówka egzaminacyjna: jeśli w zadaniu pokazano adres z parametrami po "?", myśl o GET. Jeśli pokazano brak parametrów w URL, a mowa o wysyłaniu danych formularza, rozważ POST (zwłaszcza dla danych wrażliwych).

Dodatkowe pytania

Dodatkowe pytania (FAQ):
Metoda GET oznacza, że wartości pól formularza są kodowane i dopisywane do adresu URL jako parametry (query string), zwykle po znaku "?". Dzięki temu wynik można łatwo skopiować jako link, ale dane stają się widoczne w pasku adresu i w historii przeglądarki.
Najczęściej widać znak "?" oraz dalej parametry w formie nazwa=wartość rozdzielone znakiem "&". To typowy ślad przesłania danych przez GET. Przy POST te dane zwykle nie pojawiają się w adresie, bo są wysyłane w treści żądania.
POST jest lepszy, gdy przesyłasz dane wrażliwe (np. hasło) albo większe porcje danych. Przy GET parametry trafiają do URL, co sprzyja ujawnieniu w historii lub logach. POST przenosi dane w treści żądania, więc nie są one eksponowane w samym adresie.
Nie. Rozszerzenie i nazwa skryptu (np. .php) nie determinują metody. O tym, czy dane idą jako GET czy POST, decyduje atrybut method w formularzu oraz sposób, w jaki przeglądarka koduje wysyłane pola. Skrypt po stronie serwera może obsłużyć obie metody.
GET często stosuje się w wyszukiwarkach, filtrach, sortowaniu i nawigacji, gdzie parametry mają być widoczne w URL i możliwe do udostępnienia jako link. Ułatwia to też indeksowanie oraz powrót do tych samych ustawień po odświeżeniu strony.
POST używa się m.in. do logowania, rejestracji, zapisu formularzy kontaktowych, dodawania danych do bazy oraz operacji modyfikujących stan (np. tworzenie zamówienia). Chodzi o to, by dane nie były częścią URL i by lepiej kontrolować przesyłanie treści.
Nie. Cookie to mechanizm przechowywania małych danych w przeglądarce i przesyłania ich w nagłówkach HTTP przy kolejnych żądaniach. Formularz nadal wysyła dane metodą GET albo POST. Cookie może jedynie towarzyszyć żądaniu, np. identyfikując użytkownika.
Nie. Sesja to sposób utrzymania stanu po stronie serwera, zwykle oparty o identyfikator sesji (często zapisany w cookie). Nie zastępuje GET/POST. Dane formularza są wysyłane normalnie, a sesja może służyć np. do zapamiętania użytkownika po zalogowaniu.
Najczęstszy błąd to wybór POST "bo jest bezpieczniejszy", bez sprawdzenia, czy w URL widnieją parametry. Drugi błąd to utożsamianie cookie lub sesji z metodą wysyłki formularza. W zadaniach patrz na postać adresu po wysłaniu i na atrybut method.
Przećwicz rozpoznawanie elementów formularza: action, method, pola input i przycisk submit. Naucz się, jak wygląda URL po GET (parametry po "?") oraz co oznacza wysyłka POST (dane w treści żądania). Pomaga też praca z narzędziami deweloperskimi w przeglądarce.
info

Około 58% zdających odpowiada poprawnie na to pytanie. średnie

Specjaliści zwracają uwagę: "Metoda GET przesyła dane formularza przez dopisanie ich do adresu URL jako parametry zapytania (zwykle po znaku "?")."

Źródła:

  • MDN Web Docs: "<form>: The Form element" (sekcja dotycząca atrybutu method i GET/POST) https://developer.mozilla.org/en-US/docs/Web/HTML/Element/form - accessed 2026-03-02
  • WHATWG HTML Living Standard: "The form element" oraz atrybut "method" (form submission) https://html.spec.whatwg.org/multipage/forms.html#the-form-element - accessed 2026-03-02
  • MDN Web Docs: "GET" (HTTP request method) https://developer.mozilla.org/en-US/docs/Web/HTTP/Methods/GET - accessed 2026-03-02

Materiały:

  • Dokumentacja MDN: HTML <form> oraz HTTP request methods
  • Specyfikacja HTML (WHATWG): definicja atrybutu method dla formularzy
  • Materiały dydaktyczne o HTTP i budowie URL (query string)

Aktualizacja pytania: 31.03.2026



Aktualizacja pytania: 31.03.2026
📡 Brak połączenia internetowego