2015-05-31 50 views
1

我知道你有很多次这个话题。我花了整整一周的时间从这个网站和其他网站上阅读这些东西。 我想使邮件功能正常工作,但它并不是真的想要。我的操作系统是Windows 8.我使用wamp作为apache,并且我尝试了通过smtp发送电子邮件的所有方法。我尝试了Gmail和雅虎。我修改了sendmail.ini和php.ini一百次。我尝试了phpmailer类,什么工作了一段时间,但是当我试图在联系人窗体中实现时,它停止工作。现在它根本不工作:)。我也尝试了stunnel的东西,没有发生任何事情。现在,我只是尝试解决一个简单的邮件功能发送电子邮件,作为第一步。该页面是空白的。它并没有真正给出任何错误,但我没有收到电子邮件。 这些是我目前的设置。php邮件功能不想工作

php.ini文件:

[邮件功能]

;仅适用于Win32。

SMTP =本地主机

SMTP_PORT = 25

;仅适用于Win32。

; http://php.net/sendmail-from

sendmail_from [email protected]

;仅适用于Unix。您也可以提供参数(默认值:“sendmail -t -i”)。

sendmail_path = “\” “C:\瓦帕\ sendmail的\ sendmail.exe \” -T”

sendmail.ini文件:

smtp_server = smtp.gmail.com

; SMTP端口(通常25)

SMTP_PORT = 587

[email protected]

auth_password =密码

我把端口号587,这是我在我读的最后一个话题上看到的。我希望它有帮助。我之前也尝试过25和465。 我的问题可能听起来很愚蠢。 是否可能,我的SMTP连接可能受到操作系统或PC的防火墙的影响? 我刚开始学习知道PHP,我不能前进,直到我不解决这个问题。 谢谢

+0

在Windows上,PHP邮件是特硬,因为你必须提供一个SMTP服务器,让您的邮件。此外,使用本地邮件功能需要您了解如何正确格式化邮件。我建议你暂时延迟邮件部分,并继续学习使用不同任务的PHP,或者使用本地函数替换使用库。建议将是Swiftmail或PHPMailer。 – Sven

+0

是啊..我试过php邮件。它在开始时发送一个简单的邮件。但是当我尝试在联系表单源中实现它时,它给了我很多错误。 是的..也许我会在接下来的几天里试图解决它(仅仅因为它很烦人,我不能这样做:p),如果不工作,我会延迟一段时间。 –

回答

2

您是否试过使用PHPMailer? 只需从https://github.com/PHPMailer/PHPMailer 下载它,包括它在你的代码,如:

include ("PHPMailer/class.phpmailer.php"); 
    include ("PHPMailer/class.smtp.php"); 
    $subject = "your mail subject"; 
    $body = "your mail body"; 
    $headers = "From: " . $emailfrom; 

    // Send mail 
    $mail = new PHPMailer(); 
    $mail->IsSMTP(); // telling the class to use SMTP 

    // SMTP Configuration 
    $mail->SMTPAuth = true;     // enable SMTP authentication 
    $mail->Host = "smtp.gmail.com"; // SMTP server 
    $mail->Username = "[email protected]"; 
    $mail->Password = "your email password";    
    //$mail->Port = 465; // optional if you don't want to use the default 

    $mail->From = "[email protected]"; 
    $mail->FromName = "name of sender"; 
    $mail->Subject = $subject; 
    $mail->MsgHTML($body); 

    // Add as many as you want 
    $mail->AddAddress($emailto); 

    // If you want to attach a file, relative path to it 
    //$mail->AddAttachment("images/phpmailer.gif");    // attachment 

    $response= NULL; 
    if(!$mail->Send()) { 
    $response = "Mailer Error: " . $mail->ErrorInfo; 
    } else { 
    $response = "Message sent!"; 
    }