webForumDet fria alternativet
Logga in / Bli medlem

PHP + mail() + html = netscape problem

PHP

2 svar · 207 visningar · startad av NeoBlizz

Medlem sedan jan. 200351 inlägg
Trådstart#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..

Medlem sedan mars 200399 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?

Medlem 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";
259 ms totalt · 4 externa anrop · v20260731065814-full.51f67c91
125 ms — deklarationer (db)
0 ms — hämta statistik (cache)
129 ms — hämta tråd, inlägg och bilagor (db)
127 ms — ändringar (db)