1

私はphpメーラークラスを使用して顧客に電子メールを送信しています。しかし、それはエラーで失敗しました:

Language string failed to load: recipients_failed example@gmail.com

$email_to と $email_from の値を同じメールアドレスに変更すると、メールは正常に送信されます

これは、メールを送信するための私のコードです

$email_to = "example@gmail.com";
$email_subject = "bla bla";
$email_from = 'info@domain.com.vn';
$email_message = "hello there";

$mail = new PHPMailer();
$mail->CharSet="UTF-8";
$mail->IsSMTP(); // telling the class to use SMTP
$mail->Host = "mail.domain.com.vn"; // SMTP server
$mail->From = $email_from;
$mail->AddAddress($email_to);
$mail->AddReplyTo($email_from);     
$mail->Subject = $email_subject;
$mail->WordWrap = 100; 
$mail->Body = $htmlBody;
$mail->isHTML(true);
$mail->AltBody = $email_message;
if(!$mail->Send()){
   echo $mail->ErrorInfo; 
}

したがって、$email_to を info@domain.com.vn に変更しない限り、常にエラーが報告されます。

ありがとうございました、

4

2 に答える 2

1

注: SMTPサーバーの設定を独自のサーバーに変更してください。

$your_email = "info@example.com";
$your_smtp = "mail.example.com";
$your_smtp_user = "info@example.com";
$your_smtp_pass = "example_password";
$your_website = "http://example.com";

//get contact form details
$name = $_POST['name'];
$email = $_POST['email'];
$url = $_POST['url'];
$comments = $_POST['comments'];

$response="Name: $name\nContents:\n$comments\n";

$mail = new PHPmailer();
$mail = $mail->SetLanguage("en", "phpmailer/language");
$mail->From = $your_email;
$mail->FromName = $your_website;
$mail->Host = $your_smtp;
$mail->Mailer   = "smtp";
$mail->Password = $your_smtp_pass;
$mail->Username = $your_smtp_user;
$mail->Subject = "$your_website feedback";
$mail->SMTPAuth  =  "true";
$mail->Body = $response;
$mail->AddAddress($your_email,"$your_website admin");
$mail->AddReplyTo($email,$name);

echo "<p>Thanks for your feedback, <em>$name</em>! We will contact you soon!</p>";
if (!$mail->Send()) {
echo "<p>There was an error in sending mail, please try again at a later time</p>";
}

$mail->ClearAddresses();
$mail->ClearAttachments();
于 2012-08-17T07:09:39.877 に答える
0

次のように、言語と言語ファイルへのパスを設定する必要があると思います。

$mail->SetLanguage ("de", "./phpmailer/");

これで直らない場合。言語ファイルがそのフォルダーに実際に存在することを確認してください (可能であれば相対パスを使用してください)。また、Linux では、ファイルの所有者が PHP スクリプトと同じであり、ファイルの読み取り権限が正しいことを確認してください。

于 2012-08-17T07:08:02.270 に答える