Lz wrote at Tue, 28 May 2002 17:57:57 +0200:
> Hi guys,
>
> open TMP, ">/home/dev/perl/mail_queue/$filename" or die "Can't create file: $!";
>
> I read an incoming file, modify it and save it in the file, as seen above.
>
> Later on, I'd like to send the above generated file:
>
> I try the following, but it doesn't work.
> open MSG, "|mailx -s \"test\" $mailAddress < $TMP"; close MSG;
>
> Any ideas how to make it work?
The problem is that TMP is only a filehandle.
For that what you want you need the filename.
However, $TMP is never defined (it's different to TMP),
so I'm surprised, that you didn't got a warning.
Did you use
use strict;
use warnings;
??
Also, you opened a pipe to write in,
where you wanted a system call:
You should try instead
my $fname = "/home/dev/perl/mail_queue/$filename";
open TMP, ">$fname" or die "...";
...
system("mailx","-s","test","$mailAddress","<$fname") == 0 or die " ...";
But the best solution is still to use an existing module
like Ricardo already mentioned.
If you don't like MIME::Lite, you can use
Mail::Mailer, Mail::Sendmail, Mail::Send, or what you want.
Best Wishes,
Janek
--
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]