webForumDet fria alternativet

Html i email

2 svar · 269 visningar · startad av Jester

JesterMedlem sedan sep. 200188 inlägg
#1

Ave

Jag försöker att konstrurera ett epost skript som skickar formulärdatat som mail formaterat med html med hjälp av MIME.
Problemet är när jag tar emot det så ser det helt keff ut, inte alls som jag tänkt det.
Varför blir det så?
Kan mitt webhotell konfigurerat sin mailfunktion att köra över mina htmlkommandon och lägga dit sina?

Här är koden iaf

<?
$fnamn="Kalle";
$enamn="Anka";
$epost="kalle@anka.com";
$subject="Detta är ett mailtest";
$mess="Detta är\nett test på\t\tmailfunktionen som jag byggt";
//Emailkonfiguration i MIME-format
function emailconf($mess,$subject,$fnamn,$enamn,$epost){
	$mailbound=md5(uniqid(time()));
	
	$mail="pontus@gavatum.com";
	
	//Sätter upp mailhuvudet i MIME format	
	$mailhead = "Reply-to: \"".$fnamn." ".$enamn."\" <".$epost.">\r\n";
	$mailhead .="From: \"Ett mail från hemsidan\" <noreply>\r\n";
	$mailhead .= "MIME-Version: 1.0\r\n";
	$mailhead .= "Content-type: multipart/mixed;boundary=\"".$mailbound."\"";
	$mailhead .= "\r\n\r\n";
	$mailhead .= "This is a multi-part message in MIME format.";
	$mailhead .= "\r\n\r\n";
	//Här börjar html versionen av mailet
	$mess = htmlentities($mess);
	$mess = nl2br($mess);
	$sentdate = date("Y-m-d H:i:s");
	$mailbody .= "--$mailbound\n";
	$mailbody .= "Content-type: text/html; charset=iso-8859-1\r\n";
	$mailbody .= "Content-Transfer-Encoding: quoted-printable\r\n\r\n";
	$mailbody .="<html>\n";
	$mailbody .="<head>\n";
	$mailbody .="<title>".$subject."</title>\n";
	$mailbody .="<meta http-equiv=\"Content-Type\" content=\"text/html; charset=iso-8859-1\">\n";
	$mailbody .="<style type=\"text/css\">\n";
	$mailbody .=".body {  font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 10pt; color: #000000; background-color: #FFFFFF}\n";
	$mailbody .=".rubrik {  font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 18pt; color: #000000; font-weight: bold}\n";
	$mailbody .=".small {  font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 8pt; color: #000000}\n";
	$mailbody .=".field {  font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 12pt; font-weight: bold; color: #000000}\n";
	$mailbody .=".data {  font-family: Arial, Helvetica, sans-serif; font-size: 12pt; font-weight: bold; color: #000000}\n";
	$mailbody .="</style>\n";
	$mailbody .="</head>\n";
	$mailbody .="<body class=\"body\" bgcolor=\"#FFFFFF\" leftmargin=\"0\" topmargin=\"0\" marginwidth=\"0\" marginheight=\"0\" text=\"#FFFFFF\">\n";
	$mailbody .="<div align=\"center\">\n";
	$mailbody .="<table width=\"500\" border=\"0\" cellspacing=\"0\" cellpadding=\"0\">\n";
	$mailbody .="<tr align=\"center\" valign=\"middle\">\n";
	$mailbody .="<td class=\"rubrik\" colspan=\"3\"> Ett mail fr&aring;n hemsidan </td>\n";
	$mailbody .="</tr>\n";
	$mailbody .="<tr align=\"center\" valign=\"middle\">\n";
	$mailbody .="<td height=\"25\" colspan=\"3\">\n";
	$mailbody .="<div align=\"center\" class=\"small\">Avs&auml;ndes fr&aring;n hemsidan ".$sentdate."</div>\n";
	$mailbody .="</td></tr>\n";
	$mailbody .="<tr align=\"center\" valign=\"middle\">\n";
	$mailbody .="<td height=\"15\" colspan=\"3\">&nbsp;</td>\n";
	$mailbody .="</tr>\n";
	//HÄr börjar meddelandet
	$mailbody .="<tr align=\"center\" valign=\"middle\">\n";
	$mailbody .="<td height=\"15\" width=\"150\" align=\"right\" valign=\"middle\" class=\"field\">Namn:</td>\n";
	$mailbody .="<td height=\"15\" width=\"5\" align=\"right\" valign=\"middle\" class=\"field\">&nbsp; </td>\n";
	$mailbody .="<td height=\15\" width=\"317\" align=\"left\" valign=\"middle\" class=\"data\">".$fnamn." ".$enamn."</td>\n";
	$mailbody .="</tr>\n";
	$mailbody .="<tr align=\"center\" valign=\"middle\">\n";
	$mailbody .="<td height=\"15\" width=\"150\" align=\"right\" valign=\"middle\" class=\"field\">E-post:</td>\n";
	$mailbody .="<td height=\"15\" width=\"5\" align=\"right\" valign=\"middle\" class=\"field\">&nbsp; </td>\n";
	$mailbody .="<td height=\15\" width=\"317\" align=\"left\" valign=\"middle\" class=\"data\">".$epost."</td>\n";
	$mailbody .="</tr>\n";
	$mailbody .="<tr align=\"center\" valign=\"middle\">\n";
	$mailbody .="<td height=\"15\" width=\"150\" align=\"right\" valign=\"middle\" class=\"field\">Ärende:</td>\n";
	$mailbody .="<td height=\"15\" width=\"5\" align=\"right\" valign=\"middle\" class=\"field\">&nbsp; </td>\n";
	$mailbody .="<td height=\15\" width=\"317\" align=\"left\" valign=\"middle\" class=\"data\">".$subject."</td>\n";
	$mailbody .="</tr>\n";
	$mailbody .="<tr align=\"center\" valign=\"middle\">\n";
	$mailbody .="<td height=\"15\" width=\"150\" align=\"right\" valign=\"top\" class=\"field\">Meddelande:</td>\n";
	$mailbody .="<td height=\"15\" width=\"5\" align=\"right\" valign=\"middle\" class=\"field\">&nbsp; </td>\n";
	$mailbody .="<td height=\15\" width=\"317\" align=\"left\" valign=\"top\" class=\"data\">".$mess."</td>\n";
	$mailbody .="</tr>\n";
	//Sista raden
	$mailbody .="<tr align=\"center\" valign=\"middle\">\n";
	$mailbody .="<td height=\"15\" width=\"150\" align=\"right\" valign=\"middle\" class=\"field\">&nbsp;</td>n";
	$mailbody .="<td height=\"15\" width=\"5\" align=\"right\" valign=\"middle\" class=\"field\">&nbsp;</td>n";
             $mailbody .="<td height=\"15\" width=\"317\" align=\"right\" valign=\"middle\" class=\"field\">&nbsp;</td>n";
           	$mailbody .="</tr></table></div></body></html>\n";
	$mailbody .= "\r\n\r\n";
	$mailbody .="--$mailbound--";

	return mail($mail,$subject,$mailbody,$mailhead);
}

if(emailconf($mess,$subject,$fnamn,$enamn,$epost)) echo "Det gick ju bra!!";
else echo "Detta gick ju inte";
?>

Som ni märker är det bara en testsidan men problemet rör ju inte formulärdatat.

Tack på förhand

SPiNMedlem sedan mars 20007 896 inlägg
#2

Om du tar bort ditt boundary, och sätter content-type:en till text/html, fungerar det bättre då?

JesterMedlem sedan sep. 200188 inlägg
#3

Nej det fungerade inte men när jag ändrade
"Content Transfer Encoding" från quoted/printable till 8bit så verkar det funka så när som 3 st n på lika många rader innan innehållet visas.....mkt mystiskt..

134 ms totalt · 3 externa anrop · v20260731065814-full.3ab8d573
0 ms — hämta forumlista (cache)
0 ms — hämta statistik (cache)
131 ms — hämta tråd, inlägg och bilagor (db)