PHP Formuliervalidatie - Valideren van E-mail en URL
- Vorige pagina PHP formulier vereiste velden
- Volgende pagina PHP formulier voltooien
Deze sectie toont hoe je naam, e-mail en URL kunt valideren.
PHP - Valideren van naam
De volgende code toont een eenvoudige methode om te controleren of het veld 'Naam' letters en spaties bevat. Als het veld 'Naam' ongeldig is, wordt een foutbericht opgeslagen:
$name = test_input($_POST["name"]); if (!preg_match("/^[a-zA-Z ]*$/",$name)) { $nameErr = "Alleen letters en witruimte toegestaan!"; }
Opmerking:De functie preg_match() haalt het patroon van een string op, retourneert true als het patroon bestaat, anders false.
PHP - Valideren van E-mail
De volgende code toont een eenvoudige methode om de syntaxis van een e-mailadres te controleren. Als het e-mailadres ongeldig is, wordt een foutbericht opgeslagen:
$email = test_input($_POST["email"]); if (!preg_match("/([\w\-]+\@[\w\-]+\.[\w\-]+)/",$email)) { $emailErr = "Ongeldige e-mailformaat!"; }
PHP - Valideren van URL
De volgende code toont een methode om de syntaxis van een URL-adres te controleren (deze reguliere expressie staat ook schuine strepen in de URL toe). Als de syntaxis van het URL-adres ongeldig is, wordt een foutbericht opgeslagen:
$website = test_input($_POST["website"]); if (!preg_match("/\b(?:(?:https?|ftp):\/\/|www\.)[-a-z0-9+&@#\/%?=~_|!:,.;]*[-a-z0-9+&@#\/%", =~_|]/i",$website)) { $websiteErr = "Ongeldige URL"; }
PHP - Valideren van Naam, E-mail en URL
Nu is het script als volgt:
Voorbeeld
<?php // Variabelen definiëren en op lege waarden instellen $nameErr = $emailErr = $genderErr = $websiteErr = ""; $name = $email = $gender = $comment = $website = ""; if ($_SERVER["REQUEST_METHOD"] == "POST") { if (empty($_POST["name"])) { $nameErr = "Naam is vereist"; } $name = test_input($_POST["name"]); // Controleer of de naam letters en spaties bevat if (!preg_match("/^[a-zA-Z ]*$/",$name)) { $nameErr = "Alleen letters en witruimte toegestaan"; } } if (empty($_POST["email"])) { $emailErr = "E-mail is vereist"; } $email = test_input($_POST["email"]); // Controleer of de e-mailadres grammaticaal correct is if (!preg_match("/([\w\-]+\@[\w\-]+\.[\w\-]+)/",$email)) { $emailErr = "Ongeldige e-mailindeling"; } } if (empty($_POST["website"])) { $website = ""; } $website = test_input($_POST["website"]); // Controleer of de taal van de URL-adres geldig is (deze reguliere expressie staat ook onderstrepen in de URL toe) if (!preg_match("/\b(?:(?:https?|ftp):\/\/|www\.)[-a-z0-9+&@#\/%?=~_|!:,.;]*[-a-z0-9+&@#\/%", =~_|]/i",$website)) { $websiteErr = "Ongeldige URL"; } } if (empty($_POST["comment"])) { $comment = ""; } $comment = test_input($_POST["comment"]); } if (empty($_POST["gender"])) { $genderErr = "Geslacht is vereist"; } $gender = test_input($_POST["gender"]); } } ?>
Ik zal u in de volgende stap uitleggen hoe u voorkomt dat een formulier alle invoervelden leegt nadat de gebruiker het formulier heeft ingediend.
- Vorige pagina PHP formulier vereiste velden
- Volgende pagina PHP formulier voltooien