Ćwiczenia PHP – Obsługa formularzy (GET i POST)

Instrukcja: aby zrobić formularz w HTML, używamy znacznika <form> z atrybutem method="get" lub method="post". Nie trzeba dopisywać tabeli – wystarczy wstawić pola input i przycisk submit. Tabele można używać tylko do układania elementów, ale nie są wymagane.


Ćwiczenie 1 – Formularz GET (powitanie)

Stwórz formularz, w którym użytkownik wpisuje swoje imię. Po wysłaniu metodą GET na stronie pojawi się komunikat powitalny.

Kod do przepisania:

<form method="get">
Podaj imię: <input type="text" name="imie">
<input type="submit" value="Wyślij">
</form>

<?php
if(isset($_GET['imie'])) {
echo "Witaj, " . htmlspecialchars($_GET['imie']);
}
?>

Wersja działająca:

Podaj imię:

Ćwiczenie 2 – Formularz POST (hasło)

Stwórz formularz, w którym użytkownik podaje swoje hasło. Po wysłaniu metodą POST strona wyświetli komunikat, że hasło zostało odebrane.

Kod do przepisania:

<form method="post">
Podaj hasło: <input type="password" name="haslo">
<input type="submit" value="Wyślij">
</form>

<?php
if(isset($_POST['haslo'])) {
echo "Twoje hasło to: " . htmlspecialchars($_POST['haslo']);
}
?>

Wersja działająca:

Podaj hasło:

Ćwiczenie 3 – GET i POST razem

Stwórz dwa formularze: w jednym użytkownik podaje imię (GET), a w drugim wiadomość (POST). Strona wyświetla obie informacje.

Kod do przepisania:

<form method="get">
Imię: <input type="text" name="imie2">
<input type="submit" value="Wyślij imię">
</form>

<form method="post">
Wiadomość: <textarea name="wiadomosc"></textarea>
<input type="submit" value="Wyślij wiadomość">
</form>

<?php
if(isset($_GET['imie2'])) {
echo "Twoje imię to: " . htmlspecialchars($_GET['imie2']);
}
if(isset($_POST['wiadomosc'])) {
echo "<br>Twoja wiadomość: " . htmlspecialchars($_POST['wiadomosc']);
}
?>

Wersja działająca:

Imię:
Wiadomość:

Ćwiczenie 4 – Formularz logowania

Stwórz formularz logowania, w którym użytkownik podaje login i hasło. Jeśli login to admin i hasło to 1234, wyświetl komunikat "Zalogowano pomyślnie", w przeciwnym wypadku "Błędne dane".

Kod do przepisania:

<form method="post">
Login: <input type="text" name="login"><br>
Hasło: <input type="password" name="pass"><br>
<input type="submit" value="Zaloguj">
</form>

<?php
if(isset($_POST['login']) && isset($_POST['pass'])) {
if($_POST['login']=="admin" && $_POST['pass']=="1234") {
echo "Zalogowano pomyślnie";
} else {
echo "Błędne dane";
}
}
?>

Wersja działająca:

Login:
Hasło:

Ćwiczenie 5 – Kalkulator

Stwórz formularz, w którym użytkownik podaje dwie liczby i wybiera działanie matematyczne. Wynik obliczenia zostanie wyświetlony na stronie.

Kod do przepisania:

<form method="post">
Liczba 1: <input type="number" name="a"><br>
Liczba 2: <input type="number" name="b"><br>
Działanie:
<select name="dzialanie">
<option value="dodaj">+</option>
<option value="odejmij">-</option>
<option value="mnoz">*</option>
<option value="dziel">/</option>
</select>
<input type="submit" value="Oblicz">
</form>

<?php
if(isset($_POST['a'], $_POST['b'], $_POST['dzialanie'])) {
$a = $_POST['a'];
$b = $_POST['b'];
switch($_POST['dzialanie']) {
case "dodaj": echo $a+$b; break;
case "odejmij": echo $a-$b; break;
case "mnoz": echo $a*$b; break;
case "dziel": echo $b!=0 ? $a/$b : "Błąd: dzielenie przez 0"; break;
}
}
?>

Wersja działająca:

Liczba 1:
Liczba 2:
Działanie:

Ćwiczenie 6 – Ankieta

Stwórz prostą ankietę, w której użytkownik wybiera ulubiony język programowania. Po wysłaniu formularza wyświetl wybór.

Kod do przepisania:

<form method="post">
Ulubiony język programowania:
<input type="radio" name="jezyk" value="PHP"> PHP<br>
<input type="radio" name="jezyk" value="JavaScript"> JavaScript<br>
<input type="radio" name="jezyk" value="Python"> Python<br>
<input type="submit" value="Głosuj">
</form>

<?php
if(isset($_POST['jezyk'])) {
echo "Twój wybór to: " . $_POST['jezyk'];
}
?>

Wersja działająca:

Ulubiony język programowania:
PHP
JavaScript
Python