Avatar billede MrJ Praktikant
19. februar 2008 - 16:18 Der er 3 kommentarer og
1 løsning

Underlig fejl i mail()

Hej

Jeg er stødt på en mærkelig fejl i mail() funktionen i PHP.
Jeg opdagede den, fordi at der nogen gange blev sat et udråbstegn ind steder i mit nyhedsbrev, hvor jeg vidste at der ikke skulle vises et udråbstegn.

Efter lidt undersøgen, har jeg fundet ud af at jeg kan reproducere fejlen hver gang.

Jeg har lavet følgende script:

$body = "[EN MASSE _'er]";
mail("efail@adresse.dk", "test", $body);


Teksten som skal stå i $body, kan hentes her: http://effersoe.net/mailfejl.txt

På min lokale webserver (WAMP m. php 5.2.5), optræder et space, efterfulgt af et linebreak rundt omkring i emailen, mens der på webserveren på mit arbejde (php 5.xx), optræder udråbstegn efterfulgt af linebreak i stedet.

Det skal lige siges at fejlen opstår i emails, der sendes til hotmail, lotus notes samt outlook express. I Outlook 2002, optræder fejlen mærkeligt nok ikke.

Det er ikke fordi at mit tekst-eksempel indeholder en vild lang linje, for problemet opstår også i vores nyhedsbreve, som indeholder al muligt HTML og linjeskift.

En anden ting er, at det er KUN når det sendes i en email at fejlen kommer. Hvis man laver echo $body inden den sender mailen, ser det også rigtigt ud.


Er der nogen, der kender til dén fejl? For jeg kan slet ikke finde fejlen.
Sig til hvis jeg har formuleret mit problem uforståeligt :)

Mvh
Effer
Avatar billede kjeldsted Novice
19. februar 2008 - 21:28 #1
Hvordan ser indholdet af $body ud?
Avatar billede MrJ Praktikant
19. februar 2008 - 22:25 #2
indholdet af $body, er præcis hvad denne fil indeholder: http://effersoe.net/mailfejl.txt
Avatar billede kjeldsted Novice
19. februar 2008 - 22:46 #3
Overså jeg lige :-)

Jeg kan undre mig over hvor du skal kunne sende mail med dette indhold. Men det var jo egentlig ikke det jeg skulle svare på.

Jeg ville nok prøve at angive en detaljeret header i mail().
Avatar billede MrJ Praktikant
22. februar 2008 - 14:48 #4
Jeg har fundet ud af hvad fejlen er.
Linjer i emailen må helst ikke overstige 70 tegn (ifølge php's side), så da jeg implementerede wordwrap, forsvandt problemet.
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Vi tilbyder markedets bedste kurser inden for webudvikling

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester