Hallo Heiko,
$header -= 'From:' . $email . "\n"; $header -= 'Replay-To:' . $email . "\n"; $header -= "Content-type: text/plain; charset=UTF-8 \r\n";
den Fehler mit -=
statt .=
hat Rolf ja schon genannt, zusätzlich sind aber noch die Zeilenenden falsch: die müssen überall \r\n
sein, nicht nur \n
. Generell wäre es aber auch sinnvoller nicht mail()
zum Verschicken der Mails zu verwenden sondern eine fertige Bibliothek – oder wie Matthias schrieb gleich einfach nur eine E-Mailadresse angeben.
if(($nachricht!='')&&($email!='')
da ist ein Syntax-Fehler drin, du schließt die runde Klammer nach if
nicht und die geschweifte Klammer um die beiden folgenden Zeilen fehlt auch.
echo "Ihre Nachricht wurde übermittelt. Vielen Dank!";
Es gibt keinen Grund Umlaute zu verstümmeln, du hast deine Seite doch UTF-8 codiert gespeichert, oder?
Quelle dafür war: […]
Die Seite ist bereits 6 Jahre alt und an der Stelle an der die Autorin von einer "if-Schleife" redet hat sie sich selbst disqualifiziert, auch einige deiner Fehler sind schon auf der Seite zu finden.
Ist den der
action
-Teil mit<form name="kontaktFormular" method="post" action="<?=htmlspecialchars( $_SERVER[PHP_SELF]); ?>"
richtig?
Nein, da fehlen immer noch die Anführungszeichen um »PHP_SELF« - da du allerdings ohnehin auf die gleiche Seite verweisen willst kannst du auch das action-Attribut ganz weg lassen.
Gruß,
Tobias