There's more than one way to do things | |
PerlMonks |
Re: Send mail with attachment using only SMTPby tachyon-II (Chaplain) |
on May 29, 2008 at 18:43 UTC ( [id://689064]=note: print w/replies, xml ) | Need Help?? |
Email really only deals with the ASCII charset. As a result anything outside of this charset really needs to be base 64 encoded. You are already torturing the mailserver by sending non ascii chars in the body (ie e acute). It may be your CSV contains non ASCII chars and this is causing the mail server to barf. However, the problem is probably this:
The whitespace before boundary indicates that is the line continuation (it is), but in your code you send it as a header line (it isn't). It does not really explain your symptoms as described, but is wrong and should fail. As you seem hell bent on rolling your own solution I suggest you base64 encode your CSV and send it as binary. You can just cut and paste the < 30 lines of code from MIME::Base64 encode routine to do this. BTW I would not use just "frontier" as your multipart boundary. "==frontier==", which will become "--==frontier==" would seem a far more improbable boundary. You can make your code a lot more readable if you use a HEREDOC.
In Section
Seekers of Perl Wisdom
|
|