07. januar 2006 - 11:05
Der er
32 kommentarer og 2 løsninger
Ingen linje skift.?
Hej, Jeg har en mailform som efter jeg har lavet: "Content-Type: text/plain; charset=\"iso-8859-1\"\n"; om til: "Content-Type: text/html; charset=\"iso-8859-1\"\n"; ikke vil laver linje skift.? Er der nogen særlig grund til det.?
Annonceindlæg fra Cognizant
07. januar 2006 - 11:16
#1
Ved text laver man linieskift med \n i html er det br prøv det her: "Content-Type: text/html; charset=\"iso-8859-1\"<br>"; Vh Nicki
07. januar 2006 - 11:40
#2
Det virker ikke
07. januar 2006 - 11:47
#3
I den variabel der indeholder den tekst som skal have linie skift kan du lave følgene nl2br($variabel); det vil virke 100%
07. januar 2006 - 11:49
#4
07. januar 2006 - 13:05
#5
Jeg kan sq ikke få det til at virke :( Her er noget af min kode: $message.="Content-Type: text/html; charset=\"iso-8859-1\"\n"; $message.="Content-Transfer-Encoding: quoted-printable\n"; $message.="\n"; $message.="$Besked\n\n"; $message.="Afsenders IP adresse er: $ip\n"; $message.="\n";
07. januar 2006 - 13:16
#6
Når mailen er HTML-formateret bruger man <br> til at lave linjeskift. De skal dog ikke være overalt, men kun nede i mailbody: $message.="Content-Type: text/html; charset=\"iso-8859-1\"\n"; $message.="Content-Transfer-Encoding: quoted-printable\n"; $message.="\n"; $message.="$Besked<br><br>"; $message.="Afsenders IP adresse er: $ip<br>"; $message.="<br>";
07. januar 2006 - 13:16
#7
Prøv med \r\n istedet for \n bare.
07. januar 2006 - 13:36
#8
nielle Det du viser laver mailen sådan: Test af mailform. Virker ikke.! Afsenders IP adresse er: xx.xx.xxx.xx Istedet for: Test af mailform. Virker ikke.! Afsenders IP adresse er: xx.xx.xxx.xx
07. januar 2006 - 13:45
#9
Det er så fordi at du skal bruge -aco-'s løsning på $Besked: $message.="Content-Type: text/html; charset=\"iso-8859-1\"\n"; $message.="Content-Transfer-Encoding: quoted-printable\n"; $message.="\n"; $message.= nl2br($Besked) ."<br><br>"; $message.="Afsenders IP adresse er: $ip<br>"; $message.="<br>";
07. januar 2006 - 13:51
#10
Det var det jeg sagde fra starten, du ignorede den bare :S Tak nielle ;-)
07. januar 2006 - 13:58
#11
-aco-, Nej :) Jeg er bare ikke så klog ;) Nu virker det - men nu generere den et eller andet i bunden af mailen noget i stil med: --7cedd960e6c5jruon02ac4d835d31e60--
07. januar 2006 - 14:06
#12
Jamen så er det iorden :-) Hmm 32 cifret kode, det kunne tyde på en md5 hashing. er du sikker på at der ikke står md5 nogle steder i koden ?
07. januar 2006 - 14:11
#13
Ja det gør der ikke
07. januar 2006 - 14:13
#14
hmm, prøv lige at skrive hele din kode her, så vil jeg lige prøver nogle ting af :)
07. januar 2006 - 14:19
#15
Her: $ip = $REMOTE_ADDR; function clean($key) { $key=str_replace("\r", "", $key); $key=str_replace("\n", "", $key); $find=array( "/bcc\:/i", "/Content\-Type\:/i", "/Mime\-Type\:/i", "/cc\:/i", "/to\:/i" ); $key=preg_replace($find,"",$key); return $key; } $error=""; $types=""; $sent_mail=false; If($_POST['submit']==true) { extract($_POST, EXTR_SKIP); { If($use_subject_drop AND is_array($subjects) AND is_array($emails)) { $subject_count=count($subjects); $email_count=count($emails); If($subject_count==$email_count) { $myemail=$emails[$Emne]; $Emne=$subjects[$Emne]; } } $boundary=md5(uniqid(time())); $Navn=clean($Navn); $Email=clean($Email); //Headers $headers="From: ".$Navn." (Post fra DigitaLife)<".$Email.">\n"; $headers.="Reply-To: ".$Navn." <".$Email.">\n"; $headers.="MIME-Version: 1.0\n"; $headers.="Content-Type: multipart/mixed; boundary=\"".$boundary."\"\n"; $headers.="X-Sender: ".$_SERVER['REMOTE_ADDR']."\n"; $headers.="X-Mailer: PHP/".phpversion()."\n"; $headers.="X-Priority: ".$priority."\n"; $headers.="Return-Path: <".$Email.">\n"; $headers.="This is a multi-part message in MIME format.\n"; //Message $message = "--".$boundary."\n"; $message.="Content-type: text/html; charset=iso-8859-1" . "\r\n"; $message.="Content-Transfer-Encoding: quoted-printable\r\n"; $message.="\r\n"; $message.= nl2br($Besked) ."<br><br>"; $message.="Afsenders IP adresse er: $ip<br>"; $message.="<br>"; // End the message $message.="--".$boundary."--\n"; // Send the completed message If(!mail($myemail,$Emne,$message,$headers)) { Exit("Der er sket en fejl.\n"); } Else { $sent_mail=true; } } // Else } // $_POST
07. januar 2006 - 14:21
#16
Du sagde du ikke havde noget der indeholdt ordet md5, hvad vil du så kalde dette: $boundary=md5(uniqid(time())); ;-)
07. januar 2006 - 14:22
#17
Hmmmm, havde sq søgt på det :( Nå men hvad gør jeg så med det.?
07. januar 2006 - 14:27
#18
Du ændre den bare til: $boundary = uniqid(time());
07. januar 2006 - 14:29
#19
Jeg det var det jeg tænkte med den skriver det stadig.
07. januar 2006 - 14:30
#20
Prøv at rette denne: $message = "--".$boundary."\n"; - til: $message = "--".$boundary."--\n";
07. januar 2006 - 14:33
#21
nielle, Så kommer der ikke noget tekst med i mailen der bliver sendt
07. januar 2006 - 14:34
#22
De to linje med boundaries *skal* være ens.
07. januar 2006 - 14:38
#23
Sludder... :^|
07. januar 2006 - 14:56
#24
Hmmm, nu gik det ellers så godt :)
07. januar 2006 - 15:21
#25
ved at fjerne $message.="--".$boundary."--\n"; under linjen : // End the message Kommer det ikke frem, men hvad gør denne linje.?
07. januar 2006 - 16:21
#26
-aco- og nielle, er det ikke okay hvis i deler point.?
07. januar 2006 - 16:24
#27
Det er fint med mig
07. januar 2006 - 16:57
#28
> Kommer det ikke frem, men hvad gør denne linje.? Nu har jeg ikke så stor erfaring med at lave MIME-formaterede mails, men så vidt jeg kan se bør den sidste linje være der. For: $message = "--".$boundary."\n"; - angiver starten af mailen, og: $message .= "--".$boundary."--\n"; - angiver slutningen.
07. januar 2006 - 17:26
#29
Jammen så siger jeg mange tak for jeres hjælp.!! Måske i lige kunne fortælle hvordan jeg ændre font-size og font-family på det der står i mailen.?
07. januar 2006 - 17:30
#30
<font size="2" family="verdana"> blablabla </font> eller <style> #tekst { font-family: verdana; font-size: 10px; } </style> <div id="tekst"> blablabla </div>
07. januar 2006 - 17:55
#31
Det var nu mere det den udskriver.?
07. januar 2006 - 18:16
#32
Noget i stil med: $message.= "<html> <body> <b>$Besked</b><br> </body> </html>"; Så mangler jeg bare at sætte nl2br og to gange <br> ind - kan ikke helt se hvor det skal indsætte :(
07. januar 2006 - 19:39
#33
$message.= nl2br($Besked = "<font size=\'3' face=\'Verdana'>$Besked</font><br><br>"); Men jeg kan ikke få den til at skifte face :(
07. januar 2006 - 20:50
#34
Måske? $message.= nl2br($Besked = "<div style='font-family: verdana; font-size: 10px;'>$Besked</div><br><br>");
Vi tilbyder markedets bedste kurser inden for webudvikling