ich habe das formular mit einem php-generator generieren lassen;
das war der ursprüngliche Code:
PHP-Code:
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<title></title>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
<meta http-equiv="Content-Style-Type" content="text/css" />
<meta name="robots" content="noindex,nofollow" />
</head>
<body>
<?php
// Ihre E-Mail-Adresse
$mailto = "test@jaki-klaiber.de";
// Ihre Webseite (Startseite). Nach dem absenden der E-Mail
// gelangt der Besucher über einen Link auf Ihre Startseite.
$url = "http://jaki.dyntec.de/unternehmen.php";
// Floodsperre - Innerhalb der Zeitspanne kann das Formular
// vom selben Benutzer nicht mehrmals gesendet werden.
$floodsperrzeit = 60; // Sperrzeit in Sekunden
// Datei in der die IP und die Zeit gespeichert werden sollen.
$flooddatei = "floodsperre.txt"; // Die Datei benötigt Schreibrechte!
// Automatische Weiterleitung zur Startseite nach dem absenden des Formulars.
$autoforward = 5; // Zeit in Sekunden
// Fortgeschrittene Anwender können ab hier Änderungen vornehmen.
error_reporting(0);
$eingabefehler = ""; // Bitte leer lassen!
$anrede = isset($_POST["anrede"]) ? $_POST["anrede"] : "";
$anredeCk = $anrede == "Frau" ? " checked='checked'" : "";
$name = isset($_POST["name"]) ? $_POST["name"] : "";
$feld1 = isset($_POST["feld1"]) ? $_POST["feld1"] : ""; // "Firma"
$feld2 = isset($_POST["feld2"]) ? $_POST["feld2"] : ""; // "Straße und Haus-Nr."
$feld3 = isset($_POST["feld3"]) ? $_POST["feld3"] : ""; // "PLZ und Ort"
$feld4 = isset($_POST["feld4"]) ? $_POST["feld4"] : ""; // "Telefon"
$mailfrom = isset($_POST["mailfrom"]) ? $_POST["mailfrom"] : "";
$betreff = "Anfrage"; // Der Betreff für den E-Mail Kopf.
$nachricht = isset($_POST["nachricht"]) ? $_POST["nachricht"] : "";
// Spamschutz: Rechenaufgabe
$zufallszahl1 = mt_rand(1, 90);
$zufallszahl2 = mt_rand(1, 9);
$ergebnis = md5($zufallszahl1 + $zufallszahl2);
$code = "&#" . (48 + $zufallszahl2) . ";";
// Formular erstellen
$formular = "<form action='" . $_SERVER["SCRIPT_NAME"] . "' method='post'>
<table>
<tr><td colspan='2'><!-- Fehleranzeige --></td></tr>
<tr>
<td><label>Anrede:</label></td>
<td><input type='radio' name='anrede' value='Herr' checked='checked' id='Herr' /><label for='Herr'>Herr</label>
<input type='radio' name='anrede' value='Frau'" . $anredeCk . " id='Frau' /><label for='Frau'>Frau</label></td>
</tr>
<tr>
<td><label for='Feld1'>Firma: </label></td>
<td><input type='text' size='40' name='feld1' value='" . $feld1 . "' id='Feld1' /></td>
</tr>
<tr>
<td><label for='Name'>Name: *</label></td>
<td><input type='text' size='35' name='name' value='" . $name . "' id='Name' /></td>
</tr>
<tr>
<td><label for='Feld2'>Straße und Haus-Nr.: </label></td>
<td><input type='text' size='40' name='feld2' value='" . $feld2 . "' id='Feld2' /></td>
</tr>
<tr>
<td><label for='Feld3'>PLZ und Ort: </label></td>
<td><input type='text' size='40' name='feld3' value='" . $feld3 . "' id='Feld3' /></td>
</tr>
<tr>
<td><label for='Feld4'>Telefon: *</label></td>
<td><input type='text' size='40' name='feld4' value='" . $feld4 . "' id='Feld4' /></td>
</tr>
<tr>
<td><label for='Email'>E-Mail: *</label></td>
<td><input type='text' size='45' name='mailfrom' value='" . $mailfrom . "' id='Email' /></td>
</tr>
<tr>
<td colspan='2'><label for='Nachricht'>Nachricht: *</label><br />
<textarea name='nachricht' rows='6' cols='60' id='Nachricht'>" . $nachricht . "</textarea></td>
</tr>
<tr>
<td colspan='2'><label for='Spamschutz'>Spamschutz: *</label> <em>" . $zufallszahl1 . " + " . $code . "</em> =
<input type='text' name='zip' size='3' id='Spamschutz' /><input type='hidden' name='zip2' value='" . $ergebnis . "' /> <small>(Rechenaufgabe lösen)</small></td>
</tr>
<tr>
<th colspan='2'>
<br /> ✲ <small>Bitte alle Pflichtfelder ausfüllen!</small>
<input type='submit' name='sendung' value='Formular absenden' />
</th>
</tr>
</table>
</form>";
if (isset($_POST["sendung"])) {
// Pflichtfelder überprüfen
if (strlen($name) <= 2) $eingabefehler .= "• Name fehlt!<br />";
if ($feld4 == "") $eingabefehler .= "• Telefon fehlt!<br />";
if (filter_var($mailfrom, FILTER_VALIDATE_EMAIL) === false) $eingabefehler .= "• Fehler in der E-Mail-Adresse!<br />";
if (strlen($nachricht) <= 19) $eingabefehler .= "• Die Nachricht " . ((strlen($nachricht) == 0) ? " fehlt" : " ist zu kurz") . " (min. 20 Zeichen)!<br />";
if (md5($_POST["zip"]) != $_POST["zip2"]) $eingabefehler .= "• Der Spamschutz ist leider falsch!<br />";
// Floodsperre
if (file_exists($flooddatei) && is_readable($flooddatei)) {
foreach (file($flooddatei) as $element) {
list($ip, $zeit) = explode("|", $element);
if ($ip == $_SERVER["REMOTE_ADDR"]) {
if ((floor((time() - $zeit))) < $floodsperrzeit) {
exit("<p>Ihre Nachricht wurde bereits versandt!<br />" .
"<a href='" . $url . "'>Weiter zur Startseite</a></p>");
}
}
}
}
if ($eingabefehler == "") {
// Floodsperre - IP und Zeit speichern
if (file_exists($flooddatei) && is_writeable($flooddatei)) {
$array = file($flooddatei);
$array = array_slice($array, -10);
$fh = fopen($flooddatei, "w+");
fputs($fh, implode("", $array) . $_SERVER["REMOTE_ADDR"] . "|" . time() . "|\n");
fclose($fh);
}
// Diese Nachricht wird an Ihre E-Mail-Adresse gesendet (\n = neue Zeile)
$datum = date("d.m.Y H:i");
$text = "
Datum: $datum \n
====
Anrede: $anrede \n
Name: $name \n
Firma: $feld1 \n
Straße und Haus-Nr.: $feld2 \n
PLZ und Ort: $feld3 \n
Telefon: $feld4 \n
E-Mail: $mailfrom \n
Nachricht: $nachricht \n\n
====";
// E-Mail versenden
@mail($mailto, $betreff, $text, "From: " . $mailfrom);
// Bestätigung der E-Mail
echo "<p>" .
"Vielen Dank, die Nachricht wurde gesendet.<br /><br />";
// Automatische Weiterleitung
echo "<meta http-equiv='refresh' content='" . $autoforward . "; URL=" . $url . "' />" .
"Sie werden in " . $autoforward . " Sekunden zur Startseite weitergeleitet.<br /><br />";
// Link zur Startseite
echo "<a href='" . $url . "'>Weiter zur Startseite</a></p>";
}
else {
// Eingabefehler und Formular ausgeben
echo str_replace("<!-- Fehleranzeige -->",
"<strong>Die Nachricht wurde aus folgendem Grund nicht gesendet:</strong><br />" .
$eingabefehler, $formular);
}
}
else {
// Formular ausgeben
echo $formular;
}
?>
</body>
</html>
der funktioniert auch soweit; nur das er eben nicht mein CSS - Design besitzt.
Ich habe ja am php Code soweit nichts verändert - die Fehlermeldungen in
meinem angepassten Formular werden nicht ausgegeben; Das verstehe ich nicht??
Ursprüngliches generiertes php-formular
http://jaki.dyntec.de/kontaktformular.php