1

こんにちは、メールを送信しようとするとこのエラーが発生します

SMTP -> ERROR: MAIL not accepted from server: 501 : sender address must contain a domain 

以前は問題なく動作していました。何が起こったのかわかりません。私は php メーラーを使用していますが、これは重要だとは思いません。

   $smtp = setting::get_smtp( 1 , 'support');      

   $mail   = new PHPMailer(); 
   $mail->IsSMTP(); 
   $mail->Host       = $smtp->address;  //localhost
   $mail->CharSet    = "utf-8";                              
   $mail->SMTPAuth   = true;                 
   $mail->Port       = $smtp->port;    // 25                  
   $mail->Username   = $smtp->username; 
   $mail->Password   = $smtp->password;   
   $mail->From       =  $smtp->from ; // www.mysite.com
   $mail->AddReplyTo ($smtp->username , $smtp->from ); // noreply@mysite.com //www.mysite.com
   $mail->Subject    = $title;
   $mail->AltBody    = "To view the message, please use an HTML compatible email viewer!"; 

       $mail->MsgHTML($msg);
       $mail->SMTPDebug = 1;
       if( filter_var( $admin_email , FILTER_VALIDATE_EMAIL ) == TRUE ){
       $mail->AddAddress($admin_email , "John Doe");
           $mail->Send();
       }
4

2 に答える 2

4

エラー メッセージは少し誤解を招きますが、問題は明らかです。ヘッダーにはFrom:、完全な電子メール アドレスとしてドメインが含まれている必要があります。$smtp->fromが含まれている場合www.mysite.com、それは無効な電子メール アドレスであり、 の後の部分がありません@。メーラーは、ドメイン名を電子メール アドレスの最初の部分 (ユーザー部分) にすぎないと誤解し、それを使用する必要があると不平を言います@domain。プロパティに送信者の完全なメール アドレスを指定します$smtp->from

 // Should be something like sender@example.com
 $mail->From       =  $smtp->from ; 
于 2012-04-15T13:03:54.470 に答える
0

$mail->From をメールアドレスに設定するべきではありませんか?

于 2012-04-15T13:03:29.723 に答える