pdo statements
Formular 2
Alle Eingaben eines Formulares sollten immer serverseitig geprüft werden!
Egal ob das Formular mit HTML und / oder JavaScript überprüft wurde!
Es ist möglich die eingaben des Users zu spezifizieren.
Alle einzufügenden Dateien gibt es unter Datenbankdateien!
formular.php
So zum Beispiel kann ein Formular Serverseitig geprüft werden.
<?php
Variablen $mail_to und $postmaster definieren
$mail_to="deine_email@adresse.de";
$postmaster="<dein webseitenname>";
Benutzende Variablen auf leere Werte setzen
$name=$email=$betreff=$inhalt="";
$name_err=$email_err=$betreff_err=$inhalt_err="";
Formulardaten werden verarbeitet, wenn das Formular gesendet wird einfügen
POST für Name prüfen
$postname=isset($_POST['name']) ? $_POST['name'] : "";
if (empty($postname))
{
$name_err="Feld Name ist leer";
}
elseif((strlen(trim($postname)) < 5) || (strlen(trim($postname))) > 40)
{
$name_err="Feld Name muss 5 bis 40 Zeichen enthalten";
}
else
{
$name=trim($postname);
if ($name === false)
{
$name_err="Dies ist kein Name";
}
}
POST für eMail prüfen
$postmail=isset($_POST['email']) ? $_POST['email'] : "";
if (empty($postmail))
{
$email_err="Feld eMail ist leer";
}
elseif((strlen(trim($postmail)) < 8 ) || (strlen(trim($postmail))) > 75)
{
$email_err="Feld eMail muss 8 bis 75 Zeichen enthalten";
}
else
{
$email=filter_var(trim($postmail), FILTER_VALIDATE_EMAIL);
if (!preg_match("/^[a-z]{2,}[\w.+-]{1,}+@[^@]+\.[a-z]{2,3}$/i",$email))
{
$email_err="Bitte eine valide eMail-Adresse eingeben";
}
if ($email === false)
{
$email_err="Dies ist keine valide eMail-Adresse";
}
}
POST für Betreff prüfen
$postbetreff=isset($_POST['betreff']) ? $_POST['betreff'] : "";
if (empty($postbetreff))
{
$betreff_err="Feld Betreff ist leer";
}
elseif((strlen(trim($postbetreff)) < 3) || (strlen(trim($postbetreff))) > 40)
{
$betreff_err="Feld Betreff muss 3 bis 40 Zeichen enthalten";
}
else
{
$betreff=trim($postbetreff);
if ($betreff === false)
{
$betreff_err="Dies ist kein Betreff";
}
}
POST für Nachricht prüfen
$postinhalt=isset($_POST['inhalt'] ) ? $_POST['inhalt'] : "";
if (empty($postinhalt))
{
$inhalt_err="Feld Nachricht ist leer";
}
elseif((strlen(trim($postinhalt)) < 5) || (strlen(trim($postinhalt))) > 350)
{
$inhalt_err="Feld Nachricht muss 5 bis 350 Zeichen enthalten";
}
else
{
$inhalt=trim($postinhalt);
if ($inhalt === false)
{
$inhalt_err="Dies ist keine Nachricht";
}
}
Keine Fehler, Formular Inhalt ausführen
if (empty($name_err) && empty($email_err) && empty($betreff_err) && empty($inhalt_err))
{
Hier kommt je nach Formular sowas wie:
$subject=$postmaster."\n";
$text="von: ".$name."\n";
$text.="eMail: ".$email."\n";
$text.="Betreff:".$betreff."\n";
$text.="Nachricht:".$inhalt."\n";
mail($mail_to,$subject,$text);
für eine reine text/email hin.
dann die weiterleitung zur gesendet.php
header("Location:gesendet.php");
exit;
Keine Fehler Ende
}
Formulardaten wurden gesendet ende
}
?>
formular.html
Beginn einer Html 5 Seite einfügen
Anfang Inhaltsbereich einfügen
Beginn eines Formulares
Wie soll das Formular wo hin einfügen
Felder eines Formulares
Feld für Name einfügen
Feld für eMail variante 2 einfügen
Feld für Betreff einfügen
Feld für Nachricht einfügen
Feld für Senden einfügen
Ende eines Formulares einfügen
Ende Inhaltsbereich einfügen
Ende einer Html Seite einfügen
Top
Top