[code=php]<?php
// Ze zeggen dat je de gebruiker nooit mag vertrouwen
// daarom gaan we direct wat meer controleren

// Een beetje configuratie
$conf = array(
    'mail' => 'jouw@mail.adres'
);

// Deze functie doet een snelle check op lege waarden.
// Zoals de naam beschrijft is een waarde vereist.
function validate_required($value)
{
    if (is_null($value)) {
        return false;
    } elseif (is_string($value) and trim($value) === '') {
        return false;
    }
    return true;
}

// Ik kijk mijn drie specifieke velden na, ander zouden ze misschien
// nog met iets anders kunnen afkomen. Ik ga niet nakijken of de knop
// ingedrukt is.
if ('POST' === $_SERVER['REQUEST_METHOD'] and isset($_POST['inputName'], $_POST['inputEmail'], $_POST['inputMessage'])) {
    // Even zorgen dat de overbodige spaties weggehaald worden.
    $name = trim($_POST['inputName']);
    $email = trim($_POST['inputEmail']);
    $message = trim($_POST['inputMessage']);

    // Aanmaken van een array voor de foutmeldingen
    $errors = array();

    if (!validate_required($name) or strlen($name) < 2) {
        $errors[] = "Gelieve een naam op te geven.";
    }
    if (!validate_required($email) or !filter_var($email, FILTER_VALIDATE_EMAIL)) {
        $errors[] = "Gelieve een geldige e-mail op te geven.";
    }
    if (!validate_required($message) or strlen($message) < 20) {
        $errors[] = "Gelieve een bericht op te geven dat langer is dan 20 karakters.";
    }

    // Als het aantal errors 0 is dan kunnen we een mailtje versturen
    if (0 == count($errors)) {
        // Dit is voor een mooi mailtje te bekomen.
        $headers = 'From: ' . $name . ' <' . $email . '>' . "\r\n";
        $headers .= 'Reply-To: ' . $name . ' <' . $email . '>' . "\r\n";
        $headers .= 'X-Mailer: PHP/' . phpversion() . "\r\n";

        $isSent = mail($conf['mail'], 'Berichtje van je site', $message, $headers);

        if ($isSent):
            ?>
            <div class="alert alert-success">
                Je berichtje is goed verzonden!
            </div>
        <?php else:
            ?>
            <div class="alert alert-danger">
                Er ging iets mis, probeer het straks nog eens.
            </div>
        <?php
        endif;
    } else {
        ?>
        <div class="alert alert-danger">
            <ul>
                <?php foreach ($errors as $error): ?>
                    <li><?php echo $error; ?></li>
                <?php endforeach; ?>
            </ul>
        </div>
    <?php
    }
}
?>

[code=html4strict]<!--
  Het onderstaande formulier geeft je de mogelijkheid
  om de volgende gegevens van de gebruiker te vragen.

  - Naam
  - E-mail
  - Bericht

  Deze 3 velden zullen we dan met PHP bekijken of
  ze allemaal zijn ingevuld. Mocht dit oke lijken
  dan versturen we de mail.
-->
<form action="mail.php" method="post" class="form-horizontal" role="form">
    <div class="form-group">
        <label for="inputName" class="col-lg-2 control-label">Naam</label>

        <div class="col-lg-10">
            <input type="text" class="form-control" id="inputName" name="inputName"
                   placeholder="Maarten"
                   value="<?php echo (isset($_POST['inputName']) and !is_null($_POST['inputName'])) ? htmlentities($_POST['inputName']) : ""; ?>"/>
        </div>
    </div>

    <div class="form-group">
        <label for="inputEmail" class="col-lg-2 control-label">E-mail</label>

        <div class="col-lg-10">
            <input type="email" class="form-control" id="inputEmail" name="inputEmail"
                   placeholder="denmette@gmail.com"
                   value="<?php echo (isset($_POST['inputEmail']) and !is_null($_POST['inputEmail'])) ? htmlentities($_POST['inputEmail']) : ""; ?>"/>
        </div>
    </div>

    <div class="form-group">
        <label for="inputMessage" class="col-lg-2 control-label">Bericht</label>

        <div class="col-lg-10">
            <textarea class="form-control" rows="3" id="inputMessage"
                      name="inputMessage"><?php echo (isset($_POST['inputMessage']) and !is_null($_POST['inputMessage'])) ? htmlentities($_POST['inputMessage']) : ""; ?></textarea>
        </div>
    </div>

    <div class="form-group">
        <div class="col-lg-offset-2 col-lg-10">
            <button type="submit" class="btn btn-default">Verstuur bericht</button>
        </div>
    </div>
</form>