2010-12-28 7 views
0

Perl과 MIME :: Lite를 사용하여 기본 전자 메일을 보내려고하고 있는데 다음과 같은 오류가 발생합니다. SMTP mail() 명령이 실패했습니다 : 5.1.7 잘못된 기프트 여기에 있습니다 내 코드 :전자 메일 보내기 MIME :: Lite

#!perl 

use MIME::Lite; 

#Create Mail 
$msg = MIME::Lite->new(
From =>'[email protected]', 
To =>'[email protected]', 
Cc =>'[email protected]', 
Subject =>'Subject Test', 
Data =>"Data Test" 
); 

#Send Mail 
$msg->send("smtp", "mail.place.com"); 

감사합니다.

나는 그것을 해결 결국 :

sub EMailReport 
{ 
    use MIME::Lite; 

    my $theSubject = "Sub"; 

    my $theData = "Data"; 

    my $theEmail = MIME::Lite->new(
    From  =>'[email protected]', 
    To  =>'[email protected]', 
    Subject =>$theSubject, 
    Data  =>$theData 
    ); 

    $theEmail->add("Type" => "multipart/mixed"); 

    $theEmail->send("smtp", "somemail.company.com"); 
} 
+0

정확하고 완전한 오류 메시지는 ['501 5.1.7 Invalid Address'] (https://encrypted.google.com/search?q=%22501+5.1.7+Invalid+Address%22)입니다. 다음에 복사하여 붙여 넣기를 사용하면 이러한 종류의 실수를 피할 수 있습니다. 분명히 [받는 사람 주소 구문이 잘못되었습니다.] (http://tools.ietf.org/html/rfc5321#section-4.2.2). 수정 한 후에 더 이상 문제를 나타내지 않으면 실제 코드를 게시하십시오. – daxim

+0

$ theEmail-> add ("Type"=> "multipart/mixed"); 별도의 라인 일 필요는 없다. –

답변