PHP Formularverifikation - Verificer E-mail og URL
- Forrige side PHP Formularer med obligatoriske felter
- Næste side PHP Formularfærdiggørelse
Dette afsnit viser, hvordan man verificerer navn, e-mail og URL.
PHP - Verificer navn
Følgende kode viser en simpel metode til at kontrollere om navnefeltet indeholder bogstaver og mellemrum. Hvis navnefeltet er ugyldigt, gemmes en fejlmeddelelse:
$name = test_input($_POST["name"]); if (!preg_match("/^[a-zA-Z ]*$/",$name)) { $nameErr = "Kun bogstaver og mellemrum tilladt!"; }
Kommentar:preg_match() funktionen søger efter mønstre i en streng og returnerer true, hvis mønstret findes, ellers returnerer den false.
PHP - Verificer E-mail
Følgende kode viser en simpel metode til at kontrollere om e-mail-adressens syntaks er gyldig. Hvis den er ugyldig, gemmes en fejlmeddelelse:
$email = test_input($_POST["email"]); if (!preg_match("/([\w\-]+\@[\w\-]+\.[\w\-]+)/",$email)) { $emailErr = "Ugyldigt e-mail format!"; }
PHP - Verificer URL
Følgende kode viser en metode til at kontrollere om URL-adressens syntaks er gyldig (denne regulære udtryk tillader også skråstreg i URL'en). Hvis URL-adressens syntaks er ugyldig, gemmes en fejlmeddelelse:
$website = test_input($_POST["website"]); if (!preg_match("/\b(?:(?:https?|ftp):\/\/|www\.)[-a-z0-9+&@#\/%?=~_|!:,.;]*[-a-z0-9+&@#\/%", =~_|]/i",$website)) { $websiteErr = "Ugyldig URL"; }
PHP - Verificer Navn, E-mail og URL
Nu ser scriptet sådan ud:
Eksempel
<?php // Definer variabler og sæt dem til tomme værdier $nameErr = $emailErr = $genderErr = $websiteErr = ""; $name = $email = $gender = $comment = $website = ""; if ($_SERVER["REQUEST_METHOD"] == "POST") { if (empty($_POST["name"])) { $nameErr = "Navn er påkrævet"; } $name = test_input($_POST["name"]); // Tjek om navn indeholder bogstaver og mellemrum if (!preg_match("/^[a-zA-Z ]*$/",$name)) { $nameErr = "Kun bogstaver og mellemrum tilladt"; } } if (empty($_POST["email"])) { $emailErr = "E-mail er påkrævet"; } $email = test_input($_POST["email"]); // Tjek e-mail-adressens syntaks if (!preg_match("/([\w\-]+\@[\w\-]+\.[\w\-]+)/",$email)) { $emailErr = "Invalid email format"; } } if (empty($_POST["website"])) { $website = ""; } $website = test_input($_POST["website"]); // Check if the URL address language is valid (this regular expression also allows underscores in URLs) if (!preg_match("/\b(?:(?:https?|ftp):\/\/|www\.)[-a-z0-9+&@#\/%?=~_|!:,.;]*[-a-z0-9+&@#\/%", =~_|]/i",$website)) { $websiteErr = "Invalid URL"; } } if (empty($_POST["comment"])) { $comment = ""; } $comment = test_input($_POST["comment"]); } if (empty($_POST["gender"])) { $genderErr = "Gender is required"; } $gender = test_input($_POST["gender"]); } } ?>
Jeg vil nu forklare, hvordan du kan forhindre, at et formularkald tømmer alle inputfelter, når brugeren sender formularen.
- Forrige side PHP Formularer med obligatoriske felter
- Næste side PHP Formularfærdiggørelse