Avatar billede thojo Nybegynder
27. august 2003 - 11:45 Der er 8 kommentarer og
1 løsning

Send en mail i text/HTML

Jeg skal have en script der er så simpelt som muligt i perl.
Jeg skal sende en mail til 3 brugere hvor den skriver et link som skal være html så læseren kan trykke på det når det bliver åbnet i outlook.

Det ville være fint hvis det var sendmail som kunne blive brugt.
Avatar billede clausjul Nybegynder
27. august 2003 - 11:47 #1
Du skal i mailheaderen skrive

Content-type: text/html

Og i body smider du bare HTML-kode. Enkelere kan det ikke være.
Avatar billede thojo Nybegynder
27. august 2003 - 11:52 #2
clausjul - Yep, men jeg ved ikke hvordan jeg bygger det rigtigt op.. Nu har jeg efterhånden lavet en del forsøg, men er ikke haj til perl..
Avatar billede mfalck Praktikant
27. august 2003 - 11:57 #3
jeg vil anbefale dig at installere Net::STMP

og så bruge en funktion ala:

sub mail {
  local($email, $subject, $mail, %headers) = @_;

          $smtp = Net::SMTP->new('localhost');

          $smtp->mail();
          $smtp->to($email);

          $smtp->data();
          $smtp->to("falck\@falck-hansen.dk");
          $smtp->cc("falck\@falck-hansen.dk");

          $smtp->datasend("Subject:$subject\n");

          $smtp->datasend("\n");
          $smtp->datasend($mail);
          $smtp->dataend();
        $smtp->quit;

}
Avatar billede clausjul Nybegynder
27. august 2003 - 11:58 #4
Hov du glemte

$smtp->datasend("Content-type: text/html") lige før subject...
Avatar billede thojo Nybegynder
27. august 2003 - 12:02 #5
Okay..
Hvordan får jeg så sendt selve mailen afsted?
Jeg har Net::SMTP allerede
Avatar billede mfalck Praktikant
27. august 2003 - 12:02 #6
hm - jeg tror jeg ville encode indholdet af mailen ala

use MIME::Lite;

    ### Create a new multipart message:
    $msg = MIME::Lite->new(
                From    =>'me@myhost.com',
                To      =>'you@yourhost.com',
                Cc      =>'some@other.com, some@more.com',
                Subject =>'A message with 2 parts...',
                Type    =>'multipart/mixed'
                );

    ### Add parts (each "attach" has same arguments as "new"):
    $msg->attach(Type    =>'TEXT',
                Data    =>"Here's the GIF file you wanted"
                );
    $msg->attach(Type    =>'image/gif',
                Path    =>'aaa000123.gif',
                Filename =>'logo.gif'
                );

    $text = $msg->as_string;
Avatar billede thojo Nybegynder
27. august 2003 - 12:47 #8
Nå, nu fik jeg det til at virke..
Du gav lige lige de rette linier mfalck.. smid et svar hvis du vil have nogle point ;)
Avatar billede mfalck Praktikant
27. august 2003 - 12:48 #9
ok - fino
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
Kurser inden for grundlæggende programmering

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