dobra: dynamisch erstelle PDFs als Mailanhang senden

Hallo,

ich möchte dynamisch erstellt PDFs (Rechnungen) als Mailanhang versenden.

Mit irgendwo gespeicherten Dateien funktioniert das mit MIME::Lite

   use MIME::Lite ;  
      my $prog = ssp::get_mailprog(); # Pfad zum Mailprogramm  
      open(MAIL,"|$prog -t");  
      my $msg = new MIME::Lite ;  
         my $to = "mail\@domain.com" ;  
         my $path = <Pfad zur Datei aus DB>;  
  
   $msg = build MIME::Lite  
         From    => $from ,  
         To      => $to ,  
         Subject => $subject ,  
         Type    => 'TEXT',  
         Data    => $mailtext ;  
      attach $msg  
         Type     => "AUTO" ,  
         Path     => $path,  
         Encoding => "base64",  
         Filename => $datei ;  
  
   $msg->print(\*MAIL) ;  
   close(MAIL) ;

Dynamische PDFs erstellen *und speichern* hab ich auch geschafft.

use strict;  
use warnings;  
  
my $testtext = "irgendwas das aus Formular oder DB ausgelesen wird";  
  
  use PDF::API2;  
  use PDF::TextBlock;  
  
  my $pdf = PDF::API2->new;  
  my $tb  = PDF::TextBlock->new({  
     pdf       => $pdf,  
     fonts     => {  
        b => PDF::TextBlock::Font->new({  
           pdf  => $pdf,  
           font => $pdf->corefont( 'Helvetica-Bold',    -encoding => 'latin1' ),  
        }),  
     },  
  });  
  $tb->text(  
     "statische Kopfzeite.\n\n" .  
     "dynamischer Text:\n " .  
     "$testtext\n\n " .  
     "statische Fußzeile."  
  );  
  $tb->apply;  
  $pdf->saveas('test.pdf');  
  $pdf->end;

aber wie stelle ich es an, dass die Datei nicht gespeichert sondern als Mailanhang versendet wird?

Google hat mir da leider nicht weiter geholfen...

lg
dobra

  1. Zusatzfrage:
    beide Script funktionieren bei mir nicht auf https-Seiten

    wenn das auch auf diesen Seiten funktionieren würde, könnte ich's ja erst speichern und dann aus der Datei senden.

    gibt's einen Trick, damit ich es auch auf https-Seiten verwenden kann?

  2. Mit irgendwo gespeicherten Dateien funktioniert das mit MIME::Lite

    http://search.cpan.org/dist/MIME-Lite/lib/MIME/Lite.pm

    You can specify each message part as either the literal data itself (in a scalar or array), or as a string which can be given to open() to get a readable filehandle (e.g., "<filename" or "somecommand|").

    Google hat mir da leider nicht weiter geholfen...

    Und auch die Doku nicht?
    Du kannst auch die Rohdaten MIME::Lite übergeben.

    Struppi.

    1. Hallo Struppi,

      Danke für den Link, aber ich kapier's nicht :(

      Kannst Du mir vielleicht ein ganz kleines Beispiel geben WIE ich das machen kann?

      Danke schon vorab
      dobra