Formular PHP Obligatoriu. Formulare PHP - Câmpuri obligatorii. Instrucțiunea if else. Variabila $_POST. Funcția PHP empty(). Funcția test_input(). Variabile de eroare.
Partajeaza in Google Classroom
Memorator: Descriere video Descarcă PDF
Acest capitol arată cum se pot face câmpurile de intrare necesare (input fields required) și se pot crea mesaje de eroare (error messages), dacă este nevoie.
PHP - Câmpuri obligatorii (PHP - Required Fields)
Din tabelul cu regulile de validare din pagina anterioară, vedem că sunt obligatorii câmpurile „Nume”, „E-mail” și „Gen”. Aceste câmpuri nu pot fi goale și trebuie completate în formularul HTML.
Câmp | Reguli de validare |
---|---|
Nume | Obligatoriu. + Trebuie să conțină doar litere și spațiu alb |
Obligatoriu. + Trebuie să conțină o adresă de e-mail validă (cu @ și.) | |
Website | Opțional. Dacă este prezent, trebuie să conțină o adresă URL validă |
Coment | Opțional. Câmp de introducere pe mai multe linii (Multi-line input field) (textarea) |
Gen | Obligatoriu. Trebuie să selectați unul |
În capitolul precedent, toate câmpurile de intrare (input fields) au fost opționale.
În codul următor, am adăugat câteva variabile noi: $nameErr, $emailErr, $genderErr și $websiteErr $. Aceste variabile de eroare (error variables) vor conține mesaje de eroare (error messages) pentru câmpurile necesare (required fields). Am adăugat, de asemenea, o instrucțiune if else pentru fiecare variabilă $_POST. Se verifică dacă variabila $_POST este goală (cu funcția PHP empty()). Dacă este gol, un mesaj de eroare (error message) este stocat în diferite variabile de eroare (error variables) și, dacă nu este gol, trimite datele de intrare (input data) ale utilizatorului prin funcția test_input():
<?php
// definiți variabilele și setați valorile goale
$nameErr = $emailErr = $genderErr = $websiteErr = "";
$name = $email = $gender = $comment = $website = "";
if ($_SERVER["REQUEST_METHOD"] == "POST") {
if (empty($_POST["name"])) {
$nameErr = "Name is required";
} else {
$name = test_input($_POST["name"]);
}
if (empty($_POST["email"])) {
$emailErr = "Email is required";
} else {
$email = test_input($_POST["email"]);
}
if (empty($_POST["website"])) {
$website = "";
} else {
$website = test_input($_POST["website"]);
}
if (empty($_POST["comment"])) {
$comment = "";
} else {
$comment = test_input($_POST["comment"]);
}
if (empty($_POST["gender"])) {
$genderErr = "Gender is required";
} else {
$gender = test_input($_POST["gender"]);
}
}
?>