Php SMTP邮件问题

时间:2014-02-02 10:41:49

标签: php smtp

我有一个项目,我需要创建一个个人网站,但我不能通过联系表格发送电子邮件。你能帮我解决一下我需要做些什么。

我添加了class.phpmailer.php和class.smtp.php。这是php代码;

<? php

include 'class.phpmailer.php';
$mail = new PHPMailer(); // create a new object
$mail->IsSMTP(); // enable SMTP
$mail->SMTPDebug = 1; // debugging: 1 = errors and messages, 2 = messages only
$mail->SMTPAuth = true; // authentication enabled
$mail->SMTPSecure = 'ssl'; // secure transfer enabled REQUIRED for GMail
$mail->Host = "smtp.gmail.com";
$mail->Port = 465; //  or  587
$mail->IsHTML(true);
 $mail->Username = "behzatdeniz82@gmail.com";
$mail->Password = "myseccretpassword"; //Don't reveal password with others
$mail->SetFrom("behzatdeniz82@gmail.com");
$mail->Subject = "Test";
$mail->Body = "hello";
$mail->AddAddress("behzatdeniz99@gmail.com");
 if(!$mail->Send())
 {
 echo "Mailer Error: " . $mail->ErrorInfo;
 }
 else
 {
 echo "Message has been sent";
 }
 ?> 

我改变上面的PHP代码后,现在我开始收到此错误。任何人都可以帮我解决问题吗?

 SMTP -> ERROR: Failed to connect to server: Unable to find the socket transport "ssl" 
 - did you forget to enable it when you configured PHP? (1702478359) 
 SMTP Error: Could not connect to SMTP host. Mailer Error: SMTP Error: 
 Could not connect to SMTP host. 

2 个答案:

答案 0 :(得分:1)

似乎缺少SetFrom方法。 PHPMailer有多个版本可供使用。 Download PHPMailer 5.1包含setFrom方法:

  public function SetFrom($address, $name = '',$auto=1) {   

试试吧。

答案 1 :(得分:0)

只是一个小错误,这可能是解决方案:缺少'在这里,在我的名字之后,$ mail-&gt; SetFrom($ mail-&gt;用户名,'我的名字);