469,306 Members | 1,987 Online
Bytes | Developer Community
New Post

Home Posts Topics Members FAQ

Post your question to a community of 469,306 developers. It's quick & easy.

Sending Attachment using MIME::Lite

Hello,

I'm a newbie to perl and i'd like some assistance trying to figure out how to send an attachment using MIME::Lite. I have searched the net far and wide and have used and modify different examples of attachment scripts. Unfortunately, i have had no luck trying to execute my script.


Every time i attempt to execute the script i receive the following response:
Global symbol "$msg" requires explicit package name at attach1.pl line 22.
Global symbol "$msg" requires explicit package name at attach1.pl line 30.
Global symbol "$msg" requires explicit package name at attach1.pl line 36.
Global symbol "$file_gif" requires explicit package name at attach1.pl line 41.
Global symbol "$msg" requires explicit package name at attach1.pl line 43.


Below is the code:

#!/usr/bin/perl -w
use strict;
use warnings;
use MIME::Lite;



### Adjust sender, recipient and your SMTP mailhost
my $from_address = 'elliot.anico@cellularatsea.com';
my $to_address = 'elliot.anico@cellularatsea.com';


### Adjust subject and body message
my $subject = 'A message with 2 parts ...';
my $message_body = "Here's the attachment file(s) you wanted";

### Adjust the filenames
my $my_file_pdf = '/export/home/omcadmin/bin/test.pdf';
my $your_file_pdf = 'test.pdf';

### Create the multipart container
$msg = MIME::Lite->new (
From => $from_address,
To => $to_address,
Subject => $subject,
Type =>'multipart/mixed'
) or die "Error creating multipart container: $!\n";

### Add the text message part
$msg->attach (
Type => 'TEXT',
Data => $message_body
) or die "Error adding the text message part: $!\n";

### Add the PDF file
$msg->attach (
Type => 'pdf/pdf',
Path => $my_file_pdf,
Filename => $your_file_pdf,
Disposition => 'attachment'
) or die "Error adding $file_gif: $!\n";

$msg->send;




I know this is probably something stupid. Can someone assist me with this?
Aug 17 '09 #1
5 6983
nithinpes
410 Expert 256MB
When you are using strict pragma, all the local variables in the script need to be declared with my.
Change the line:
Expand|Select|Wrap|Line Numbers
  1. $msg = MIME::Lite->new (
  2.  
  3.  
to:

Expand|Select|Wrap|Line Numbers
  1. my $msg = MIME::Lite->new (
  2.  
  3.  

As for $file_gif, the variable is not defined anywhere in the script.
Aug 18 '09 #2
numberwhun
3,503 Expert Mod 2GB
These are all errors associated with using strict and warnings and need to be worked out to get to any real errors.

Regards,

Jeff
Aug 18 '09 #3
KevinADC
4,059 Expert 2GB
Already replied to and resolved on another forum.
Aug 18 '09 #4
I see. well, i managed to modify my script but i'm having problems attempting to send the email via Net::SMTP. I keep receiving the following error when i execute the script:

SMTP MAIL command failed:
5.7.1 Helo invalid .

at attach1.pl line 30


This is the very last line in the script below which is
$msg -> send;

Below is my modified script:

#!/usr/bin/perl -w
use warnings;
use MIME::Lite;
use Net::SMTP;


my $msg = MIME::Lite->new(
From => 'elliot.anico@cellularatsea.com',
To => 'elliot.anico@cellularatsea.com',
cc => 'wms.nmc@cellularatsea.com',
Subject => 'Multiple attachments',
Type => 'multipart/mixed');

$msg->attach( Type =>'image/jpg',
Path =>'/export/home/omcadmin/bin/Sunset.jpg',
Filename =>'Sunset.jpg');

$msg->attach( Type =>'image/jpg',
Path =>'/export/home/omcadmin/bin/Winter.jpg',
Filename =>'Winter.jpg');

$msg->attach( Type =>'TEXT',
Data =>'This is a test for outside usage');



$SMTP_SERVER = 'wmsexg01.corp.cellularatsea.com';

MIME::Lite->send('smtp', 'SMTP_SERVER');
$msg -> send;



What could i be doing wrong?
Aug 19 '09 #5
KevinADC
4,059 Expert 2GB
see perlguru
Aug 19 '09 #6

Post your reply

Sign in to post your reply or Sign up for a free account.

Similar topics

1 post views Thread by John B. Kim | last post: by
2 posts views Thread by Deen | last post: by
1 post views Thread by Zev Steinhardt | last post: by
6 posts views Thread by ssankar | last post: by
2 posts views Thread by idorjee | last post: by
1 post views Thread by jcor | last post: by
reply views Thread by zhoujie | last post: by
reply views Thread by suresh191 | last post: by
1 post views Thread by Geralt96 | last post: by
reply views Thread by harlem98 | last post: by
By using this site, you agree to our Privacy Policy and Terms of Use.