2017-07-19 10 views
1

PHPでコーディングを開始しました。メールを送信しようとしていますが、エラーが発生しますメーラーエラー:SMTP connect()が失敗しました。任意の助けをいただければ幸いですlocalhostでSMTP connect()に失敗しました。

date_default_timezone_set('Etc/UTC'); 

    require 'PHPMailerAutoload.php'; 

    $mail = new PHPMailer; 

    $mail->isSMTP(); 
    $mail->Host = gethostbyname('ssl://smtp.gmail.com'); 

    $mail->SMTPAuth = true; 
    $mail->AuthType = 'LOGIN'; 
    $mail->Username = '[email protected]'; 
    $mail->Password = '********'; 
    $mail->SMTPSecure = 'tls'; 
    $mail->Port = 587; 

    $mail->setFrom('[email protected]','Abc') ; 
    $mail->addReplyTo('[email protected]'); 
    $mail->addAddress("[email protected]",'No REPLY'); 
    $mail->isHTML(true); 

    $mail->Body = "12345"; 
    $mail->Subject = "<b>OTP for password reset<b>"; 
    $mail->Body = "Hi! Your OTP is : "; 

    if(!$mail->Send()) { 
     echo 'Message was not sent.'; 
     echo "Mailer Error: " . $mail->ErrorInfo; 
     } 
    else { 
     echo 'Message has been sent.'; 
    } 

:以下

は、私が使用していたコードです。

+0

これはどれですか? – abeyaz

+0

これをチェックしてください:[PHPMailerでのエラー処理](https://stackoverflow.com/questions/2386544/error-handling-with-phpmailer) –

+0

PHPバージョンは5.6.25 –

答えて

0

$mail->Host = "smtp.gmail.com"; 
$mail->SMTPSecure = 'ssl'; 
$mail->Port = 465; 

$mail->Host = gethostbyname('ssl://smtp.gmail.com'); 
$mail->SMTPSecure = 'tls'; 
$mail->Port = 587; 

から変更してopen_sslを確認するには、あなたのphp.iniを開き、次の行 ;extension=php_openssl.dllを検索し、保存し、その前にセミコロンを削除

を有効にファイルを開き、Webサーバーを再起動します。

+0

PHP.INIのopen_sslはすでに有効になっています。 私は前に使用したコードを持っていましたが、同じエラーがありました。 $ mail-> Host = "ssl://smtp.gmail.com"; –

+0

どのエラーが発生していますか? –

+0

SMTP connect()に失敗しました –

関連する問題