Hi monks,
I'm trying to send pdf files as attachment in emails sent with Net::SMTP. The PDF files reside on my website (like home/mysite/files/PDF_FILES_HERE).
The code I have below is for sending normal emails:
use strict;
use Net::SMTP;
use MIME::Base64;
my $smtphost = 'some_smtp_host';
my $username = 'some_username';
my $password = 'some_password';
my $emailto = 'to@hello.com';
my $emailfrom = 'from@hello.com';
my $subject = 'Hello world';
my $message = 'Test message';
sub date_r {
my ($monthday, $mon, $yr, $ time, $hour, $str);
my (@lt) = ();
@lt = localtime();
$monthday = $lt[3];
$mon = $lt[4]+1;
$yr = $lt[5] + 1900;
$hour = $lt[2];
$time = sprintf("%02d:%02d:%02d", $hour, $lt[1], $lt[0]);
$str = $mon . '/' .$monthday . '/' . $yr . ' ' . $time;
return $str;
}
my $smtp = Net::SMTP->new($smtphost, Debug => 1, Timeout => 5);
$smtp->datasend("AUTH LOGIN\n");
$smtp->datasend(encode_base64($username));
$smtp->datasend(encode_base64($password));
$smtp->mail($emailfrom);
$smtp->to($emailto);
$smtp->data();
$smtp->datasend("MIME-Version: 1.0\n");
$smtp->datasend("From: $emailfrom\n");
$smtp->datasend("To: $emailto\n");
$smtp->datasend("Date: " . date_r() . "\n");
$smtp->datasend("Subject: $subject");
$smtp->datasend("\n\n");
$smtp->datasend($message);
$smtp->datasend("\n\n");
$smtp->dataend();
$smtp->quit;
What do I need to change to make so that I can send attachments (pdf files)?
Please enlighten me. Thank you in advance.