Hi!
nur leider wird es jetzt nicht mehr versendet!!
Woran erkennst du das?
Wenn es nicht versendet werden würde, dann bräuchtest du auch keinen PHP-Code zu posten.
Daran kann es ja nicht liegen. Wird das Formular nicht versendet, dann wird auch nichts an dein PHP-File geschickt.
Teste doch, ob das Formular verschickt wurde:
if ( isset( $_POST ) )
oder
if ( $_SERVER['REQUEST_METHOD'] == 'POST' )
Was sollen denn diese Arrays?
$empfaenger = array("Tobias ReisnerTobias.Reisner@web.de");
$empfaengerString = implode(",",$empfaenger);
Und was soll das implode()? Da kann doch nichts imploded werden.
Scheinbar war das im Originalscript sinnvoll. Nachdem du das auf dich als einzigen Empfänger geändert hast, ist es sinnlos.
Arbeite hier mit Strings bzw. einfachen Variablen.
Gleiches gilt auch für das CC-Feld.
Und das BCC-Feld ist ebenfalls sinnlos. Wenn die Mail ohnehin an die geht, dann muß sie doch nicht nochmal per BCC an dich (gleiche Adresse) gehen.
/* Baut Header der MAil zusammen */
$headers .= "From:" . $absender . "\n";
$headers .= "Reply-To:" . $reply . "\n";
$headers .= "X-Mailer: PHP/" . phpversion(). "\n";
$headers .= "X-Sender-IP: $REMOTE_ADDR\n";
$headers .= "Content-type: text/html\n";
Header müssen nach dem SMTP-RFC mit \r\n abgetrennt werden und nicht mit einem einfachen \n.
$absender = $_POST['absender'];
Warum setzt du diese zusätzliche Variable ein? Das ist nicht notwendig?
Statt
$headers .= "Content-type: text/html\n";
solltest du besser
$header = 'MIME-Version: 1.0' . "\r\n";
$header .= 'Content-type: text/html; charset=iso-8859-1' . "\r\n";
einsetzen.
Das charset mußt du natürlich eventuell anpassen. Ich weiß ja nicht, welches bei dir zum Einsatz kommt.
Wenn du aber willst, daß alle Zeichen korrekt angezeigt werden, dann solltest du die Charset-Angabe nicht vergessen.
Du du außerdem eine HTML-Mail verschickst, solltest du die Zeilenumbrüche aus dem Formular (\r\n) in HTML-Zeilenumbrüche (<br>) umwandeln.
PHP bietet dir dazu nl2br().
Schöner Gruß,
rob