今日、私はphpでいくつかのメーリングを行っていました.1つはPhpによって提供される単純なメール機能であり、2つ目はインターネットで見つけたサイトhttpsのPHPメーラークラスを使用することに関する2つの方法があることがわかりました。 ://github.com/PHPMailer/PHPMailer . 問題は、メールが送信されないよりもプログラムを実行したことです。コードを見てみましょう
<?php
include 'PHPMailer-master/class.phpmailer.php';
$mail = new PHPMailer(); // create a new object
$mail->IsSMTP(); // enable SMTP
$mail->SMTPDebug = 1; // debugging: 1 = errors and messages,
// 2 = messages only
$mail->SMTPAuth = true; // authentication enabled
$mail->SMTPSecure = 'tls'; // secure transfer enabled REQUIRED for GMail
$mail->Host = "smtp.gmail.com";
$mail->Port = 465; # or 587
$mail->IsHTML(true);
$mail->Username = "singh6@gmail.com";
$mail->Password = "88888*******";
$mail->SetFrom('singh@gmail.com');
$mail->AddAddress('sanu@gmail.com');
$mail->Subject = "Test";
$mail->Body = "hello";
$sendResult = $mail->Send();
if ($sendResult)
{
echo "Message has been sent";
}
else
{
echo "Mailer Error: " . $mail->ErrorInfo;
}
このスクリプトを実行すると、次のエラーが表示されます。
CLIENT -> SMTP: EHLO localhost
SMTP -> ERROR: EHLO not accepted from server:
CLIENT -> SMTP: HELO localhost
Notice: fwrite(): 16 バイトの送信が errno=10054 で失敗しました 既存の接続がリモート ホストによって強制的に閉じられました。C:\xampp\htdocs\program\mailsending1\mailsending_v1\PHPMailer-master\class.smtp.php の 1023 行目
SMTP -> ERROR: HELO not accepted from server:
SMTP -> NOTICE: EOF caught while checking if connected
SMTP Connect() failed.
Mailer Error: SMTP Connect() failed.