Vielen Dank. Muss jetzt gleich weg und werde es mir heute Abend mal genauer anschauen. Gestern noch soweit gekommen...:
PHP-Code:
<?php
$ok = TRUE;
if ('POST' == $_SERVER['REQUEST_METHOD']) {
if (!isset($_POST['vorname'], $_POST['nachname'], $_POST['email'], $_POST['senden'])) {
echo "Nicht alles vorhanden";
$ok = FALSE;
}
if (!ereg("^.+@.+\\..+$", $_POST['email'])) {
echo "Die eingegebene Emailadresse ist nicht korrekt!<br />";
$ok = FALSE;
}
if (($vorname = trim($_POST['vorname'])) == '' OR
($nachname = trim($_POST['nachname'])) == '' OR
($email = trim($_POST['email'])) == '') {
echo "Bitte alle Felder ausfüllen";
$ok = FALSE;
}
if (preg_match("/[^a-zA-Z]/", $vorname) || preg_match("/[^a-zA-Z]/", $nachname)){
echo "Bitte verwenden Sie nur Buchstaben";
$ok = FALSE;
}
if (md5( $_POST['sicherheit'] ) != $_SESSION['captcha_code']) {
$ok = FALSE;
echo 'captcha ist falsch';
}
if ($ok) {
echo 'das formular wurde korrekt ausgefüllt';
}
}
?>
<form id="newsletter" action="<?php echo $_SERVER['PHP_SELF']; ?>" method="post">
<fieldset>
<legend>Tragen Sie sich bitte in unser Newsletter ein</legend>
<ol>
<li>
<label for="vorname">Vorname: </label>
<input type="text" name="vorname" id="vorname" />
</li>
<li>
<label for="nachname">Nachname: </label>
<input type="text" name="nachname" id="nachname" />
</li>
<li>
<label for="email">E-Mail: </label>
<input type="text" name="email" id="email" />
</li>
<li>
<!-- Start Captcha -->
<img src="inc/captcha.inc.php" alt="Sicherheitscode" title="Sicherheitscode" width="80" height="25" /><br />
<label for="sicherheit">Sicherheitscode eingeben: </label>
<input type="text" name="sicherheit" id="sicherheit" />
<!-- End Captcha -->
</li>
<li>
<input name="senden" id="senden" type="submit" value="Abschicken" class="button" />
</li>
</ol>
</fieldset>
</form>
Also das ist das Script bis jetzt. Ich weiss, das es bestimmte bessere Lösungsansätze gibt (für einen Hinweis wäre ich dankbar), aber das habe ich schonmal alles verstanden. Wie gesagt, das Script schau ich mir dann heute Abend nochmal an. Tausend Dank.