2013-06-04 3 views
0

메일을 보내려고하는데 빈 페이지가 나타납니다. 에코가 맞지 않았고 오류를 볼 수 없었습니다.PhpMailer 메일에 오류 정보가 없음

try { 
    $mail->SetFrom($email, $name); 
    $mail->SMTPDebug = 2; 
    $address = "[email protected]"; 
    $mail->AddAddress($address, "xx"); 
    $mail->Subject = "Contact Form Submission | " . $name; 
    $mail->MsgHTML($email_body); 
    $mail->SMTPSecure = "tls"; 
    $mail->IsSMTP(); 
    $mail->Host = "smtp.gmail.com"; 
    $mail->Port = 587; 
    $mail->SMTPAuth = true; 
    $mail->Username = '[email protected]'; 
    $mail->Password = 'password1234'; 

    if (!$mail->Send()) { 
     echo "Mailer Error: " . $mail->ErrorInfo; 
     exit; 
    } 
    else 
     echo 'sent'; 
    //header("Location: contact.php?status=thanks"); 
} catch (phpmailerException $e) { 
    echo 'error1'; 
} catch (Exception $e) { 
    echo 'error2'; 
} 
+1

아마도 오류가 없습니다. –

+0

을 참조하십시오. 구문 오류가있을 수 있습니다. 서버 로그를 확인하십시오. 빈 페이지를 가져 오는 대신 오류를 볼 수 있도록 PHP 오류보고 기능을 켜십시오. – Spudley

답변

1

언급 한 바와 같이, 당신은 당신의 스크립트의 상단에 다음 두 라인에 오류보고를 설정해야합니다 : 당신이 PHPMailer의 SMTP 클래스를 포함했다 당신이있어 이후로, 또한

ini_set('display_errors', 1); 
error_reporting(E_ALL); 

SMTP를 통해 메일을 보내시겠습니까? "class.smtp.php"파일은 "class.phpmailer.php"와 같은 디렉토리에 있어야합니다. 빠져 있다면 PHPMailer가 포함하려고 할 때 오류가 발생합니다