2014-11-20 1 views
2

양식 작성 중 : 양식을 제출 한 후 Gmail 계정으로 메일을 보내야합니다. SwiftMailer를 설정했는데 모든 것이 제대로 설정되어있는 것 같습니다.하지만 아무 일도 일어나지 않습니다. 나는이 PHP 파일에 양식의 "행동"을 설정 한 :PHP - SwiftMailer를 사용하여 Gmail SMTP를 통해 메일을 보낼 때의 문제

<?php 
    require_once '/assets/swift-mailer/lib/swift_required.php'; 

    // variables 
    $visitor_email = $_POST['email']; 
    $visitor_phone = $_POST['phone']; 
    $visitor_page = $_POST['site']; 


    $transport = Swift_SmtpTransport::newInstance('smtp.gmail.com', 465, "ssl") 
     ->setUsername('[email protected]') 
     ->setPassword('mypassword'); 

    $mailer = Swift_Mailer::newInstance($transport); 

    $message = Swift_Message::newInstance('New submission') 
     ->setFrom('[email protected]') 
     ->setTo('[email protected]') 
     ->setBody("New submission from this site: \n 
       $visitor_page \n 
       e-mail address: $visitor_email \n 
       phone number: $visitor_phone"); 

    $result = $mailer->send($message); 
    ?> 

나는 이중 PHP의 버전을 확인했고, 서버에 괜찮습니다. Php_openssl이 사용 가능합니다. 서버가 올바르게 실행 중입니다. html 파일의 양식은 ok입니다. "method = post"가 연관되어 있습니다. 라이브러리가 서버 폴더에 올바르게 배치됩니다. 나는 무엇이 잘못되었는지를 정말로 이해하지 못한다.

답변

3

아마도 메일을 보내지 않은 이유가 많습니다 ... 아파치 error_log 및 브라우저 네트워크를 확인하고 싶습니까? 또는 스크립트에서 error_reporting (E_ALL)을 설정할 수 있습니다. Google smtp 문제 또는 기타 문제 일 수 있습니다. . 먼저 문제를 해결해야만 아무 것도 할 수 있습니다. 오류를 업로드하면 누구든지 도움을 줄 수 있습니다.

이 시도 할 수 있습니다하지만 난 당신을 위해 유용 모르겠습니다 또는

$transport = Swift_SmtpTransport::newInstance('smtp.gmail.com', 465, "ssl"); 
의 대신하지

$transport = Swift_SmtpTransport::newInstance('smtp.gmail.com', 587, 'tls');