電子書籍の厳選無料作品が豊富!

PerlでメールにZIPファイルを添付して送信したいです。

http://homepage3.nifty.com/hippo2000/perltips/pe …
http://perltips.twinkle.cc/perl/mail_mime_attach …

上記のサイトを参考に以下のプログラムを組んでみました。
するとエラーメッセージが画像のような感じででてきました。

おそらく、なんか文字コードがおかしいのかもしれないのですが、どこから手をつけていいのかわかりません。

どなたかお助け下さいm(__)m

前回も別の問題で助けていただいたのですが、文字コードの問題でした。他の部分は全くひっかからないのに、この部分で40時間ほど悩んでおります・゜・(ノД`;)・゜・

========================================

sub mail_push {

# サーバー、アカウント、パスワード、ポート、送信元アドレス、送信先アドレス、題名、本文、送るべきファイル1(空の場合は無視)、送るべきファイル2(空の場合は無視)
my ( $mailhost, $mail_username, $mail_password, $mailport, $from_mail, $to_mail, $subject, $message, $file1, $file2 ) = @_;

# 正しいメールの形なのか調べる
if ( $to_mail eq '' ) {

print "送り先のメールアドレスが空のようです\n"; # ERR

} elsif ( $to_mail =~ /^([a-zA-Z0-9\.\-\/_]{1,})@([a-zA-Z0-9\.\-\/_]{1,})\.([a-zA-Z0-9\.\-\/_]{1,})$/ ) {


# 実際に送る
my $smtp = Net::SMTP->new($mailhost, Port => $mailport);
$smtp->auth($mail_username, $mail_password);
$smtp->mail($from_mail);
$smtp->to($to_mail);
$smtp->data();


my $mime = MIME::Entity->build(
Type => 'multipart/related',
From => $from_mail,
To => $to_mail,
Subject => $subject,
Type => 'text/plain;charset="iso-2022-jp"',
Data=> $message,
Encoding => "7bit");

# エラーがでてくる箇所
$mime->attach(
Path   => 'c:/buromaga1.jpg',
Type   => 'Application/octet-stream',
Encoding => 'Base64',);

$smtp->datasend($mime->stringify);# ERR
$smtp->dataend();# ERR

# SMTP終了
$smtp->quit;

} else {

print "送り先が正しいメールの形式ではありません\n"; # ERR

}

}

「Perlでのメール添付送信のエラー」の質問画像

A 回答 (2件)

Perl殆ど書いたことないから自信ないが、


エラーメッセージからすると、ソースコード上PathやTypeの後ろに【全角空白】があるのではないかと思う。半角空白やタブではなく。
    • good
    • 0
この回答へのお礼

ありがとうございます。

全角空白がはいってました。なんというか、こういうのに気が付かず苦しんでいました、なんとも言えない気持ちです(T_T)

お礼日時:2013/03/04 18:26

エラーメッセージを読めばわかるが #1 で正解.

    • good
    • 0
この回答へのお礼

ありがとうございます。

全角空白が原因でした、泣きそうです(T_T)

お礼日時:2013/03/04 18:26

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!