2017-12-18 84 views
0

有沒有人使用forest_of_code/PerfectCode的「Perfect Contact Us Form」?完美聯繫我們表問題

我不斷收到錯誤信息:「糟糕!有些東西不對,請檢查您的詳細信息。」

我按照編碼器的指示一步一步地檢查了多次,我沒有誤輸入。我也確定我的主機允許郵件通過SMTP。我正嘗試使用Gmail郵件發送郵件。我在我的帳戶中啓用了「允許安全性較低的應用程序」,但我沒有使用2AuthFactor。

這是我目前的設置(在XXXX是隱藏我的信息,我的文件即時通訊使用我的真實信息):

function smtpContact($to, $subject, $name, $phone, $message){ 
      require_once 'PHPMailer/PHPMailerAutoload.php'; 
      $response = array(); 
      //Create a new PHPMailer instance 
      $mail = new PHPMailer; 
      $mail->isSMTP(); 
      $mail->SMTPDebug = 0; 
      $mail->Debugoutput = 'html'; 
      $mail->Host = "smtp.gmail.com"; 
      $mail->Port = 587; 
      $mail->SMTPAuth = true; 
      $mail->Username = "[email protected]"; 
      $mail->Password = "xxxxxxxxxxxxx"; 
      $mail->setFrom($to, $name); 
      $mail->addAddress('[email protected]', 'XXXXX'); 
      $mail->Subject = $subject; 
      $message = '<div style="background:#F5F5F5; padding:10px;"> 
          <p>'.$message.'</p><br /> 
          <div>Name : '.$name.'</div><br /> 
          <div>Phone : '.$phone.'</div><br /> 
         </div>'; 
      $mail->msgHTML($message); 
      $mail->AltBody = 'This is a plain-text message body'; 
      $mail->SMTPOptions = array(
       'ssl' => array(
       'verify_peer' => false, 
       'verify_peer_name' => false, 
       'allow_self_signed' => true 
      ) 
     ); 
     if (!$mail->send()){ 
      // For Debugging 
      //return "Mailer Error: " . $mail->ErrorInfo; 
      $response['error'] = 'Something not right. Please check your details.'; 
     }else{ 
      $response['success'] = 'Your email has been sent successfully.'; 
     } 
     echo json_encode($response, JSON_PRETTY_PRINT); 
    }/*...ends[contactus]...*/ 
+0

它看起來像你有一個ErrorInfo屬性的郵件對象。你可能想從那裏開始並收到消息。這將有所幫助。 – Ctznkane525

+0

我已經嘗試過,但它給出的是,我知道一個事實是錯誤的憑據是不是。我剛剛偶然發現了一個近5年的帖子,提到這一行是'$ mail-> isSMTP();'的問題。我刪除它,它工作得很好。一直試圖找到解決這個問題daaaaays – Synn

+0

耶剛剛意識到,我問了這個問題後。我一直在尋找嘗試和刪除這篇文章,但我無法找到它的任何地方。即時通訊在這裏仍然是新的,所以它可能需要我來找出如何刪除這個 – Synn

回答

0

這之前大約5年前有了答案。我再次發佈這個內容,就像我一樣,人們仍然遇到這個問題。我發現這裏的解決方案:send email using Gmail SMTP server through PHP Mailer

基本上所有我需要做的就是刪除這一行$mail->isSMTP();

我該用戶表示感謝,我一直在尋找一個解決方案了好幾天,直到我偶然發現了他的問題,他自己回答:D