zusätzliche headerinformationen bei Schlund
Homer
- php
0 Cheatah0 Homer0 Henk Strobel0 Homer0 Henk Strobel0 Homer
0 Julian Hofmann
0 Julian Hofmann
Hallo zusammen,
ich habe meine Internetseite seit gestern bei Schlund und Partner gehostet und versuche nun wie gewohnt meine Emails per PHP zu versenden.
Hierbei verwende ich die gängige Form
mail($to, $subject, $message, $headers);
Dummerweise kommen die zusätzlichen headerinformationen bei Schlund nicht in den Header, sondern in den Body der Email, was kann man dagegen tun, bzw was mache ich falsch.
Meine Email (eigentlich eine Multipartmeassage) sieht dadurch halt aus wie Kraut und Rüben....
bei meinem bisherigen Provider (die medienplaner) lief da ganze problemlos von daher kann der Code nicht allzu falsch sein ;-)
Vielen dank schon mal im voraus.
Gruß Homer
Hi,
Dummerweise kommen die zusätzlichen headerinformationen bei Schlund nicht in den Header, sondern in den Body der Email, [...] was mache ich falsch.
irgendwo hast Du einen Umbruch zu viel.
Cheatah
$header = "From: $absender_name<$absender_email>$zeilenumbruch";
$header .= "Reply-To: <$absender_email>$zeilenumbruch";
$header .= "X-Sender: $absender_name<$absender_email>$zeilenumbruch";
$header .= "X-Mailer: PHP/" . phpversion(). "$zeilenumbruch";
$header .= "X-Sender-IP: $REMOTE_ADDR$zeilenumbruch";
$header .= "X-Priority: 3$zeilenumbruch";
$header .= "MIME-Version: 1.0$zeilenumbruch";
$header .= "Content-Type: multipart/alternative; boundary="----=MIME_BOUNDRY_message_parts"$zeilenumbruch";
$header .= "This is a multi-part message in MIME format.$zeilenumbruch";
$header .= "$zeilenumbruch";
$zeilenumbruch enstpricht einem normalen "\n"...
das Problem ist halt er setzt mir meine multipart-message nicht mehr zusammen....
nochmals vielen Dank
Homer
Hallo Homer,
das Problem ist halt er setzt mir meine multipart-message nicht mehr zusammen....
Warum machst Du eigentlich die von der PHP-Funktion vorgegebene Trennung zwischen Header und Message mit?
Ich habe das immer so gemacht, das ich den gesamten Quelltext der Mail (inkl. aller Header) der mail()-Funktion als 4. Argument übergeben habe, und als 3. Argument einfach eine leere Zeichenkette. Das finde ich wesentlich übersichtlicher und man hat auch die volle Kontrolle über den Quelltext der Mail. Wahrscheinlich erledigt sich Dein Problem dann schon von selbst...
Gruß
Henk
da versendet S+P leider mal gar nichts, wenn ich das so mach, wie du mir geraten hast....
sonst noch ne idee?
Hallo,
sonst noch ne idee?
Ja. übergib statt einer leeren Zeichenkette ein Leerzeichen o.ä. Das sollte ja in der Mail nicht stören...
Ansonsten müsstest Du ja sendmail auch direkt aufrufen können, ohne die Mailfunktion zu benutzen. Vorrausgesetzt, es ist ein Unixserver mit sendmail und Du hast das Recht dazu...
Das habe ich aber bisher nur in Perl gemacht, kann dazu also nicht viel sagen, aber guck mal unter http://forum.de.selfhtml.org/archiv/2004/1/68223/#m391096
Gruß
Henk
Hallo,
vielen Dank für eure schnelle Hilfe.
@Henk: mit dem leeren Zeichenstring funktioniert das leider nicht...
Ich habe aber meinen Fehler gefunden: Ein einsames "\r\n" hat sich in den Emailbody eingeschmuggelt...
Was ein einziger Buchstabe alles bewirken kann...
Vielen Dank nochmal und schöne Grüße von der Schwäbischen Alb
Homer
Hallo Homer.
Folgende Funktion ist bei mir auf einem Schlund-Account problemlos am laufen:
/**
* Verschickt E-Mail mit Fusszeile
*
* @param string Empfaenger-Mailadresse
* @param string Absender-Mailadresse
* @param string Betreffzeile
* @param string Mailinhalt
*
* @return boolean Versandt
*/
function email($empfaenger,$absender,$betreff,$text)
{
$text .= "\n--------------------------------------------------\n";
$text .= " Signatur\n";
$text .= "--------------------------------------------------\n";
$headers .= "MIME-Version: 1.0\n";
$headers .= "Content-type: text/plain; charset=iso-8859-1\n";
$headers .= "X-Priority: 3\n";
$headers .= "X-Mailer: by PHP\n";
$headers .= "From: "".$absender."" <".$absender.">\n";
$headers .= "bcc: <".$absender.">\n";
return(mail(""".$empfaenger."" <".$empfaenger.">", $betreff, $text, $headers));
} // Ende der email()-Funktion ---------------------------------------------
Grüße aus Würzburg
Julian
Hallo.
... von daher kann der Code nicht allzu falsch sein ;-)
Irgendwas scheint aber wohl nicht zu passen. Hab bei S+P keine Probleme mit Header-Angaben in Mails.
Vielleicht postest Du mal die relevanten Codeteile.
Grüße aus Würzburg
Julian