Beispiele zur Validierung von Daten

Bei der Validierung von Eingabedaten ist es wichtig, einen Whitelist-Ansatz zu wählen und nur erlaubte Werte zuzulassen. Es ist sicherlich nicht möglich, für jede mögliche Variante ein passendes Beispiel zu liefern, im folgenden sollen aber einige Snippets Möglichkeiten zur Validierung aufzeigen.

Validierung einer E-Mail-Adresse:

Zitat<?php
$clean = array();
$email_pattern = '/^[^@\s<&>]+@([-a-z0-9]+\.)+[a-z]{2,}$/i';
if (preg_match($email_pattern, $_POST['email']))
{
    $clean['email'] = $_POST['email'];
}
?>

Validierung von $_POST['color'] auf red, green und blue:

Zitat<?php
$clean = array();
switch ($_POST['color'])
{
    case 'red':
    case 'green':
    case 'blue':
        $clean['color'] = $_POST['color'];
        break;
}
?>

Validierung von $_POST['num'] auf Integer-Werte:

Zitat<?php
$clean = array();
if ($_POST['num'] == strval(intval($_POST['num'])))
{
    $clean['num'] = $_POST['num'];
}
?>

Validierung von $_POST['num'] auf Float-Werte:

Zitat<?php
$clean = array();
if ($_POST['num'] == strval(floatval($_POST['num'])))
{
    $clean['num'] = $_POST['num'];
}
?>


Netzwerke