Hallo an alle,
hier ein Beispiel für ein gut funktionierendes Affenformular.
PHP
<?php
if ((isset($_POST['name'])) and (isset($_POST['anfrage']))){
$name = htmlentities($_POST['name']);
$telnr = htmlentities($_POST['telnr']);
$email = htmlentities($_POST['email']);
$anfrage = htmlentities($_POST['anfrage']);
$ich = $_SERVER['PHP_SELF'];
if (($name=="") or ($anfrage=="")){
echo "<form action=\"$ich\" method=\"post\">";
if ($name==""){
echo "<p>Bitte geben Sie Ihren Namen ein:</p>";
}
echo "<div><span>Name:</span><input type=\"text\" name=\"name\" value=\"$name\" /></div>";
echo "<div><span>Telefonnummer:</span><input type=\"text\" name=\"telnr\" value=\"$telnr\" /></div>";
echo "<div><span>E-Mail:</span><input type=\"text\" name=\"email\" value=\"$email\" /></div>";
if ($name['anfrage']==""){
echo "<p>Bitte geben Sie Ihre Anfrage ein:</p>";
}
echo "<div><span>Anfrage:</span><textarea name=\"anfrage\" cols=\"20\" rows=\"5\">$anfrage</textarea></div>";
echo "<div><span> </span><input type=\"submit\" name=\"\" value=\"absenden\" /></div>";
echo "</form>";
echo "<p>Die Felder \"Name\" und \"Anfrage\" sind Pflichtfelder. Alle restlichen Felder müssen Sie nur ausfüllen, wenn Sie eine Rückmeldung erwarten.</p>";
echo "<p class=\"wichtig\">Vielen Dank für Ihre Anfrage.</p>";
}
else{
}
}
else{
// Hier kann man dann festlegen, was man mit den Daten machen will (E-Mail senden, Datenbankabfrge o.ä.)
?>
<form action="kontakt.php" method="post">
<div><span>Name:</span><input type="text" name="name" value="" /></div>
<div><span>Telefonnummer:</span><input type="text" name="telnr" value="" /></div>
<div><span>E-Mail:</span><input type="text" name="email" value="" /></div>
<div><span>Anfrage:</span><textarea name="anfrage" cols="20" rows="5" ></textarea></div>
<div><span> </span><input type="submit" name="" value="absenden" /></div>
</form>
<?php
}
?>
Alles anzeigen
Es bietet folgende Features:
1. Automatisches escapen der Eingaben
2. Anzeigen der gemachten Eingaben, falls Formular nicht vollständig ausgefüllt wurde
Mit folgenden CSS-Code wird es auch als Tabelle angezeigt:
Code
form {
display: table;
}
form div {
display: table-row;
}
form span {
display: table-cell;
vertical-align: middle;
}
form p {
font-weight: bold;
}
input,textarea {
display: table-cell;
margin-bottom: 0.3em;
}
Alles anzeigen
Falls noch Fragen offenbleiben, einfach an mich wenden!