2017-02-22 111 views
2

我无法通过Gmail SMTP设置发送邮件......在另一方面,没有任何authentiacation我从sg2nlhg096.shr.prod.sin2.secureserver.net服务器名称获取邮件。PHP梅勒不发送SMTP邮件

SMTP设置代码。

require_once "class.phpmailer.php"; 
require_once('class.smtp.php'); 

$mail = new PHPMailer(true); 
$mail->IsSMTP(); 
$mail->Host = 'smtp.gmail.com'; 
$mail->SMTPAuth = true; 
$mail->Username = '[email protected]'; 
$mail->Password = '*************'; 
$mail->SMTPSecure = 'tls'; 
$mail->Port = 587; 

$mail->setFrom('[email protected]', 'John'); 
$mail->addReplyTo('[email protected]', 'Doe'); 
$mail->addAddress('[email protected]', 'John Doe'); 

$mail->Subject = 'PHPMailer GMail SMTP test'; 

$mail->msgHTML(file_get_contents('contents.html'), dirname(__FILE__)); 

$mail->AltBody = 'This is a plain-text message body'; 

if (!$mail->send()) { 
echo "Mailer Error: " . $mail->ErrorInfo; 
echo 0; 
} else { 
echo "Message sent!"; 
echo 1; 
} 

简单邮件设置...

require("class.phpmailer.php"); 
$mail = new PHPMailer(); // create a new object 
$mail->From = $_POST['email1']; 
$mail->FromName = $_POST['name1']; 


$mail->addAddress("[email protected]", "Dynastictech Form"); 

//Address to which recipient will reply 
$mail->addReplyTo($_POST['email1'], "Reply"); 
$mail->isHTML(true); 

$mail->Subject = 'hidden_subject'; 
$mail->Body = 'body'; 
$mail->AltBody = "Thanks"; 


if (!$mail->Send()) { 
//echo 'error'. mysqli_error($con); 
echo 0; 
} else { 
//echo 'Message has beeen successfully send. we will contact as soon!'; 
echo 1; 
} 

我与AJAX调用的HTML文件

$.ajax({ 
         type: "POST", 
         url: "../send_form_email.php", 
         data: dataString, 
         cache: false, 
         success: function (data) { 
          //$(".success_mes").html(data); 

          if (data == 1) 
          { 
           $(".success_mes").html("Message has beeen successfully send."); 
           $('#name').val(''); 
           $("#email").val(''); 
           $("#phone").val(''); 
           $("#subject").val(''); 
           $("#comments").val(''); 
          } else 
          { 
           $(".mail_error").html("*Something Went Wrong .."); 
          } 
         }, 
        }); 
+0

你使用godaddy?如果是这样,它不会工作:http://stackoverflow.com/a/5440231/1858357 – BizzyBob

+0

我不知道,因为它是一个客户端项目。 –

+0

我认为secureserver.net是godaddy。 – BizzyBob

回答

0

您可以启用调试看到更多的细节:

$mail->SMTPDebug = 2; // enables SMTP debug information (for testing) 
// 1 = errors and messages 
// 2 = messages only 
+0

我试过这个,没有收到任何错误消息... –

+0

首先尝试没有ajax。并将调试设置为1. –

+0

这不仅仅是一个答案,它的代码中的评论是错误的,并且很多年过时了。 – Synchro