22. oktober 2008 - 09:35
Der er
11 kommentarer
utf-8 med phpmail
Hej eksperter, Jeg har lidt problemer med en mailer jeg har bikset sammen, som ikke vil skrive æøå i mailen, men i stedet udskifter å med Ã¥. koden er som følger: <?php if (isset($_POST['navn']) && isset($_POST['adresse']) && isset($_POST['postnr']) && isset($_POST['by']) && isset($_POST['email']) && isset($_POST['telefon'])) { if (empty($_POST['navn'])) { echo "Du skal indtaste dit navn"; } elseif (empty($_POST['adresse'])) { echo "Du skal indtaste din adresse"; } elseif (empty($_POST['email'])) { echo "Du skal indtaste din emailadresse"; } else { $modtager = "min@mail.dk"; $emne = "Bestilling på domæne.dk"; $besked = "Hej, du har modtaget bestilling på domæne.dk: \n Navn: " . $_POST['navn']. "\n Adresse: " . $_POST['adresse']. "\n " . $_POST['postnr']. " " . $_POST['by']. "\n \n Email: " . $_POST['email']. "\n Telefon: " . $_POST['telefon']; $header = "from:salg@mail.dk"; mail($modtager, $emne, $besked, $header); echo "Bestillingen er nu modtaget!"; } } ?> men det er måske selve formularen der sender videre med forkert charset?
Annonceindlæg fra IBM
22. oktober 2008 - 09:40
#1
prøv at definer dit charset: $header .= 'Content-type: text/html; charset=iso-8859-1' . "\r\n"; indsættes efter $header = "from...";
22. oktober 2008 - 10:46
#2
Men den skal vel sættes til UTF-8 og ikke ISO-8859-1 så.
22. oktober 2008 - 10:49
#3
ja, det kommer jo an på hvilket charset han vil bruge...
22. oktober 2008 - 11:32
#4
<ole> Udfra overskriften og teksten i spørgsmålet at dømme, ønsker han at bruge utf-8 =) /mvh </bole>
22. oktober 2008 - 12:02
#5
Så du vil mene at den skal hedde: $header = "from:salg@mail.dk"; $header .= 'Content-type: text/html; charset=utf-8' . "\r\n"; mail($modtager, $emne, $besked, $header); echo "Bestillingen er nu modtaget!"; Umiddelbart ser det, i den modtagne mail, ud til at de to headers bliver blandet sammen. Mailen bliver modtaget fra: "@ mail. dkcontent-type" <salg>, text/html, charset=iso-8859-1
22. oktober 2008 - 12:10
#6
Hvis danske bogstaver ses som 2 bogstaver saa: - er den sendt som UTF-8 - men opfattes af modtager baseret paa headere som ISO-8859-1
22. oktober 2008 - 12:23
#7
Du mangler \r\n i den første headerlinje: $header = 'from:salg@mail.dk' . "\r\n";; $header .= 'Content-type: text/html; charset=utf-8' . "\r\n";
11. december 2008 - 09:50
#8
hov - havde helt glemt denne, du må hellere smide et svar så jeg kan give point :-)
04. november 2010 - 10:49
#9
kan vi lukke hér?
04. november 2010 - 11:44
#10
Yep :-)
04. november 2010 - 12:51
#11
Skal nogen have point, synes du? :)
Vi tilbyder markedets bedste kurser inden for webudvikling