Ich wollte einmal fragen, ob dieses Formular in Ordnung ist, oder unsicher ist. Habt ihr Tipps zur Verbesserung, damit es sicher wird, oder einfach besser wird?
Danke für eure Ratschläge!
PHP:
<?php
$subject = isset($_POST["subject"]) ? $_POST["subject"] : "";
$prename = isset($_POST["prename"]) ? $_POST["prename"] : "";
$surname = isset($_POST["surname"]) ? $_POST["surname"] : "";
$email = isset($_POST["email"]) ? $_POST["email"] : "";
$website = isset($_POST["website"]) ? $_POST["website"] : "";
$company = isset($_POST["company"]) ? $_POST["company"] : "";
$address = isset ($_POST["address"]) ? $_POST["address"] : "";
$postcode = isset($_POST["postcode"]) ? $_POST["postcode"] : "";
$location = isset($_POST["location"]) ? $_POST["location"] : "";
$country = isset($_POST["country"]) ? $_POST["country"] : "";
$message = isset($_POST["message"]) ? $_POST["message"] : "";
$error = "";
$to = "[email protected]";
$subject_email = "[Anfrage] ".$subject;
$text = "<p><strong>Name:</strong> ".$_POST["prename"]." ".$_POST["surname"]."</p><p><strong>Webseite:</strong> ".$_POST["website"]."</p><p><strong>Firma:</strong> ".$_POST["company"]."</p><p><strong>Anschrift:</strong> ".$_POST["address"].", ".$_POST["postcode"]." ".$_POST["location"]."</p><p><strong>Land:</strong> ".$_POST["country"]."</p><p><strong>Nachricht:</strong></p>".nl2br($_POST["message"]);
$header = "MIME-Version: 1.0"."\r\n";
$header .= "Content-type: text/html; charset=iso-8859-1"."\r\n";
$header .= "From:".$prename." ".$surname."<".$email.">"."\r\n";
$formular = <<<form
<form action="contact.php" method="post">
<p>
<label for="subject"><em>Betreff:</em></label>
<input type="text" name="subject" id="subject" value="$subject" tabindex="6" />
</p>
<p>
<label for="prename">Vorname:</label>
<input type="text" name="prename" id="prename" value="$prename" tabindex="7" />
</p>
<p>
<label for="surname">Nachname:</label>
<input type="text" name="surname" id="surname" value="$surname" tabindex="8" />
</p>
<p>
<label for="email"><em>E-Mail Adresse:</em></label>
<input type="text" name="email" id="email" value="$email" tabindex="9" />
</p>
<p>
<label for="website">Webseite:</label>
<input type="text" name="website" id="website" value="$website" tabindex="10" />
</p>
<p>
<label for="company">Firma:</label>
<input type="text" name="company" id="company" value="$company" tabindex="11" />
</p>
<p>
<label for="address">Anschrift:</label>
<input type="text" name="address" id="address" value="$address" tabindex="12" />
</p>
<p>
<label for="postcode">Postleitzahl:</label>
<input type="text" name="postcode" id="postcode" value="$postcode" tabindex="13" />
</p>
<p>
<label for="location">Ort:</label>
<input type="text" name="location" id="location" value="$location" tabindex="14" />
</p>
<p>
<label for="country">Land:</label>
<input type="text" name="country" id="country" value="$country" tabindex="15" />
</p>
<p>
<label for="message"><em>Ihre Nachricht:</em></label>
<textarea name="message" id="message" cols="62" rows="11" tabindex="16">$message</textarea>
</p>
<p class="post-reset">
<input name="post" type="submit" id="post" tabindex="17" value="Absenden" />
<input name="reset" type="reset" id="reset" tabindex="18" value="Zurücksetzen" />
</p>
</form>
<p>
<em>Hinweis:</em> Felder, welche <em>fett</em> dargestellt werden, sind Pflichtfelder und müssen ausgefüllt werden.
</p>\r\n
form;
if (isset($_POST["message"])) {
if (strlen($subject) < 1) {
$error .= "\t\t\t\t• Betreff<br />\r\n";
}
if (!preg_match("|^[_a-za-z0-9-]+(.[_a-za-z0-9-]+)*@([a-z0-9-]{3,})+.([a-za-z]{2,4})$|i", $email)) {
$error .= "\t\t\t\t• E-Mail Adresse<br />\r\n";
}
if (strlen($message) < 1) {
$error .= "\t\t\t\t• Ihre Nachricht\r\n";
}
if ($error == "") {
mail($to, $subject_email, $text, $header);
echo "<p>\r\n\t\t\t\tIhre Nachricht wurde an uns übermittelt. Vielen Dank!\r\n\t\t\t</p>\r\n";
}
else {
echo "<p>\r\n\t\t\t\tNutzen Sie das Kontaktformular um mit uns zu kommunizieren.\r\n\t\t\t</p>\r\n\t\t\t<p class=\"error\">\r\n\t\t\t\t<strong>Bitte überprüfen Sie folgende Felder:</strong>\r\n";
echo $error."\t\t\t</p>\r\n".$formular;
}
}
else {
echo "<p>\r\n\t\t\t\tNutzen Sie das Kontaktformular um mit uns zu kommunizieren.\r\n\t\t\t</p>\r\n";
echo $formular;
}
?>