Avatar billede qualon1 Nybegynder
24. juli 2005 - 12:20 Der er 18 kommentarer og
1 løsning

Sende en HTML email med venhæftet fil

Hej eksperter

Jeg ville gerne have sådan at jeg kan sende en html email, altså en email hvor jeg kan bruge html koder til formatteringen...

Jeg har en kode nu, den sender da også emailen og html er med, men den sender også dette med:

Message-Id: <20050723223102.D66F32F5083@ws2.surf-town.net> Date: Sun, 24 Jul 2005 00:31:02 +0200 (CEST) X-Spam-Checker-Version: SpamAssassin 3.0.3 (2005-04-27) on localhost X-Spam-Status: No, score=2.4 required=5.0 tests=HTML_20_30,HTML_MESSAGE, HTML_MIME_NO_HTML_TAG,MIME_HTML_ONLY autolearn=disabled version=3.0.3 X-Spam-Level: **

Jeg bruger følgende script:

$to  = "$navn <$email>";
$subject = "HTML test mail";
$headers = "From: qualon1 <no-reply@qualon.dk>\n";
$headers .= "Content-Type: text/html; charset=iso-8859-1\nContent-Transfer-Encoding: 8bit\n";
$headers .= "MIME-Version: 1.0\r\n";
$message = "Hej $navn<br><br>En masse html koder <b>fed</b> heh";
mail($to, $subject, $message, $headers);

med dette script får man en mail der ser sådan ud:
Message-Id: <20050723223102.D66F32F5083@ws2.surf-town.net> Date: Sun, 24 Jul 2005 00:31:02 +0200 (CEST) X-Spam-Checker-Version: SpamAssassin 3.0.3 (2005-04-27) on localhost X-Spam-Status: No, score=2.4 required=5.0 tests=HTML_20_30,HTML_MESSAGE, HTML_MIME_NO_HTML_TAG,MIME_HTML_ONLY autolearn=disabled version=3.0.3 X-Spam-Level: ** Hej $navn

En masse html koder <b>fed</b> heh



Jeg ville gerne vide hvordan jeg får det øverste væk da det er meget grimt...
Avatar billede Slettet bruger
24. juli 2005 - 20:11 #1
Prøv med:

$to  = "$navn <$email>";
$subject = "HTML test mail";
$headers = "From: qualon1 <no-reply@qualon.dk>\r\n";
$headers .= "Content-Type: text/html; charset=iso-8859-1\nContent-Transfer-Encoding: 8bit\r\n";
$headers .= "MIME-Version: 1.0\r\n";
$message = "Hej $navn<br><br>En masse html koder <b>fed</b> heh";
mail($to, $subject, $message, $headers);
Avatar billede qualon1 Nybegynder
24. juli 2005 - 22:47 #2
hmmm den gør det værre... så virker html heller ikke
Avatar billede Slettet bruger
24. juli 2005 - 23:00 #3
Jeg har lige opdaget, at jeg sidder inde med et problem præcis magen til.. Hvis jeg sender html-mails til min @gmail.com adresse får jeg en linie magen til din i toppen af min e-mail, mens jeg på min almindelige @domæne.dk mail virker ubeklageligt.
Avatar billede qualon1 Nybegynder
24. juli 2005 - 23:01 #4
ja... det virker nemlig i et webmail program... men i outlook laver den det der...
Avatar billede mrgumble Nybegynder
25. juli 2005 - 14:54 #5
Det der med Message-Id ... - er det noget der kommer frem i teksten af e-mailen eller ligger det blot i headeren? For du kan nemlig ikke undgå at det lægger sig i headeren, eftersom det er den modtagende og sendende mailserver der lægger de værdier ind i headeren.
Avatar billede qualon1 Nybegynder
25. juli 2005 - 14:56 #6
ved ikke om det ligger sig i headeren... ved bare det ligger lige over den tekst som der sendes...
Avatar billede mrgumble Nybegynder
25. juli 2005 - 16:07 #7
Hmm... Så må vi gå ud fra, at den fremgår som en del af emailkroppen.
Har du prøvet at indkludere et helt html-dokument? Dvs., istedet for blot at have nogle enkelte HTML-tags, så har du det hele?

Prøv:
$message = "<html><head><title>HTML test mail</title></head>";
$message .= "<body>Hej $navn<br /><br />En masse html koder <b>fed</b> heh</body></html>";
Avatar billede qualon1 Nybegynder
25. juli 2005 - 16:11 #8
ja... det hjælper ikke
Avatar billede mrgumble Nybegynder
25. juli 2005 - 16:16 #9
Endnu et punkt; alle headers i mail-funktionen skal adskilles af \r\n og ikke blot \n. Hvis du benytter det stykke kode som wicez skrev, mangler du blot at erstatte den '\n'der adskiller 'charset=iso-8859-1' og 'Content-Transfer' med en \r\n.
Du kunne evt. også prøve at fjerne Content-Transfer-Encoding-headeren (ikke hele linien), da den ikke er nødvendig for at sende html, men filer.

$headers = "From: qualon1 <no-reply@qualon.dk>\r\n";
$headers .= "Content-Type: text/html; charset=iso-8859-1\r\n";
$headers .= "MIME-Version: 1.0\r\n";
Avatar billede qualon1 Nybegynder
25. juli 2005 - 16:20 #10
har lige prøvet det du skriver der... med følgende kode:

<?
$to  = "qualon <qualon@qualon.dk>";
$subject = "HTML test mail";
$headers = "From: qualon1 <no-reply@qualon.dk>\r\n";
$headers .= "Content-Type: text/html; charset=iso-8859-1\r\n";
$headers .= "MIME-Version: 1.0\r\n";
$message = "Hej $navn<br><br>En masse html koder <b>fed</b> heh";
mail($to, $subject, $message, $headers);
?>
Avatar billede qualon1 Nybegynder
25. juli 2005 - 16:20 #11
det virkede heller ikke... så er html slet ikke aktiv
Avatar billede mrgumble Nybegynder
25. juli 2005 - 16:24 #12
Dette er taget fra php-manualen, http://www.php.net/manual/en/function.mail.php:

$headers  = 'MIME-Version: 1.0' . "\r\n";
$headers .= 'Content-type: text/html; charset=iso-8859-1' . "\r\n";

Hvis jeg går helt ned i dybden og er helt pernitten, så skal T'et i Content-Type ikke være med stort. Hvis dette er tilfældet, siger jeg bare forbandet case-sensitive...
Avatar billede qualon1 Nybegynder
25. juli 2005 - 16:26 #13
selvom jeg ændre det til lille t så får jeg stadig denne meddelse:

Content-type: text/html; charset=iso-8859-1 MIME-Version: 1.0 Message-Id: <20050725142547.01DD92F5084@ws2.surf-town.net>
Date: Mon, 25 Jul 2005 16:25:47 +0200 (CEST)
X-Spam-Checker-Version: SpamAssassin 3.0.3 (2005-04-27) on localhost
X-Spam-Status: No, score=2.7 required=5.0 tests=HTML_30_40,HTML_MESSAGE,
    HTML_MIME_NO_HTML_TAG,HTML_SHORT_LENGTH,MIME_HTML_ONLY
    autolearn=disabled version=3.0.3
X-Spam-Level: **


Hej <br><br>En masse html koder <b>fed</b> heh
Avatar billede mrgumble Nybegynder
25. juli 2005 - 16:27 #14
Har du prøvet at benytte det eksempel der står i php-manualen?
Avatar billede qualon1 Nybegynder
25. juli 2005 - 18:56 #15
ja... og det virker heller ikke... har kopiert den direkte men det er der stadig og html virker ikke
Avatar billede Slettet bruger
31. juli 2005 - 08:24 #16
Prøv med: 

$to  = $navn ."<". $email .">";
$subject = "HTML test mail";
$headers = "From: qualon1 <no-reply@qualon.dk>\n";
$headers .= 'Content-type: text/html; charset=iso-8859-1' . "\n";
$message = "Hej ". $navn ."<br><br>En masse html koder <b>fed</b> heh";
Avatar billede qualon1 Nybegynder
31. juli 2005 - 11:22 #17
Hej

Jeg har fundet ud af at det ikke er koderne der er noget galt med, men min udbyder. Den tekst som bliver indsat er fra deres mail server og spam server.... SÅ der er ingen mulighed for at fjerne det... Ikke særlig fedt lavet Surftown!!!!!
Avatar billede Slettet bruger
31. juli 2005 - 12:02 #18
Okay. Jeg har selv haft samme problem, og løste det vha ovenstående - ville bare lige informere dig ;o)
Avatar billede qualon1 Nybegynder
02. september 2005 - 16:09 #19
/lukker spørgsmål... ingen svar
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