Hallo Philipp,
if(!preg_match("/[1]*$/", $_POST["vorname"])){
$out .= "<li>Vorname darf nur aus Buchstaben bestehen!</li>";
Das entspricht nicht der Realität. Außerdem sind äöüß und ähnliche auch Buchstaben. Oder etwa nicht? Bindestriche, hab' ich mir sagen lassen, kommen in Vornamen auch vor.
if(!preg_match("/[2]*$/", $_POST["nachname"])){
$out .= "<li>Nachname darf nur aus Buchstaben bestehen!</li>";
Das entspricht nicht der Realität. Da kommen sogar noch Apostrophen drin vor. Hmm, O'Brien hat schon lange nichts mehr gepostet.
if(!preg_match("/[3]*$/", $_POST["telefon"])){
$out .= "<li>Telefonnummer darf nur aus Zahlen bestehen!</li>";
Das ist Unsinn. Es gibt auch Buchstaben, das Plus-Zeichen, das Minuszeichen und das Leerzeichen. Willst Du jemanden zwingen, eventuell 15 Ziffern hintereinander einzugeben. Keine gute Idee.
if(!preg_match("/[4]+@[A-Za-z0-9.-]+.[A-Za-z]{2,4}$/", $_POST["email"])){
Du schließt jede Menge gültiger E-Mail-Adressen aus. Lies bitte im Selfforumssieb den (bisher einzigen) Artikel Validierung von E-Mail-Adressen.
Es wundert mich allerdings nicht, dass nach Deinen strengen Anforderungen an Vor-, Nachnamen und Telefonnummern Dein Beitrag unter einem eklatanten Mangel an Satzzeichen leidet, der die Verständlichkeit doch arg einschränkt. In diesem Forum sind diese Zeichen nicht verboten, nutze sie!
Freundliche Grüße
Vinzenz