webForumDet fria alternativet

PHP + mail() + html = netscape problem

2 svar · 207 visningar · startad av NeoBlizz

NeoBlizzMedlem sedan jan. 200351 inlägg
#1

Har testat mail() (som kör sendmail på freebsd) men har problem att få HTML kodningen att funka om man skickar till Netscape's Mailprogram.

Tänkte om jag kanske kunde få hjälp med detta.

<?php 
// Send the mail to? 
$mailTo = "namn@adress.com"; 

// Mail subject? 
$mailSubject = "Hello!"; 

// Mail body. 
$mailBody  = "Line 1 <br>"; 
$mailBody .= "Line 2 <br>"; 
$mailBody .= "Line 3 <br>"; 
$mailBody .= "Line 4 <br><br>"; 
$mailBody .= phpversion(); 
$mailBody .= "<br><br>"; 
$mailBody .= "<html>"; 
$mailBody .= "<body>"; 
$mailBody .= "<font color='red'>"; 
$mailBody .= "Hej"; 
$mailBody .= "</font>"; 
$mailBody .= "</body>"; 
$mailBody .= "</html>"; 

// Mail Header 

/* To send HTML mail, you can set the Content-type header. */ 
$mailHeaders  = "MIME-Version: 1.0\r\n"; 
$mailHeaders .= "From: Name <name@adress.com>\r\n"; 
$mailHeaders .= "Content-type: text/html; charset=iso-8859-1\r\n"; 

// Send the mail 
if(mail($mailTo, $mailSubject, $mailBody, $mailHeaders)) 
{ 
    print("Mail Sent!"); 
} 
else 
{ 
    print("Mailing FAILED."); 
} 
?>

Resultat jag får som mail i Netscapes Mailprogram:

From: Name <name@adress.com>
Content-type: text/html; charset=iso-8859-1

Message-Id: <20031109203255.3448214A39@adress.com>
Date: Sun, 9 Nov 2003 21:32:55 +0100 (CET)

Line 1 <br>Line 2 <br>Line 3 <br>Line 4 <br><br>4.3.4<br><br><html>0<body><font color='red'>Hej</font></body></html>

Får alltså inget HTML-kodning i mailet... + att all header information skrivs ut i mailet..

spejsklarkMedlem sedan mars 2003112 inlägg
#2

Jag tycker det ser rätt ut.
Vilken version av Netscape använder du för att läsa mailet? Vilka andra emailklienter har du testat där det funkar?

NeoBlizzMedlem sedan jan. 200351 inlägg
#3

Netscape 7.1, funkar i Hotmail + IE 4, 5, 6.

MEN problemet är löst, och det var så j-la lamt att det inte e sant.

\r\n -> \r \n så funkade det, alltså ett mellanslag mellan \r och \n så fungerar det.

/* To send HTML mail, you can set the Content-type header. */ 
$mailHeaders  = "MIME-Version: 1.0\r \n"; 
$mailHeaders .= "From: Name <name@adress.com>\r \n"; 
$mailHeaders .= "Content-type: text/html; charset=iso-8859-1\r \n";
Genererad på 381 ms · cache AV · v20260730165559-full.f96bc7eb