使用 php 中的 xampp 从本地服务器发送邮件

Posted

技术标签:

【中文标题】使用 php 中的 xampp 从本地服务器发送邮件【英文标题】:send mail from local server using xampp in php 【发布时间】:2017-06-24 08:40:19 【问题描述】:
<?php

class EmailModel extends CI_Model
    public function email()

        require 'Email Files/PHPMailerAutoload.php';


        $mail = new PHPMailer;


        $mail->isSMTP();                               
        $mail->Host = 'smtp.gmail.com'; 
        $mail->SMTPAuth = true;                               
        $mail->Username = 'Google account username';              
        $mail->Password = 'Google account Password';  
        $mail->SMTPSecure = 'ssl';
        $mail->Port = 465;  
        $mail->addAddress('abc@gmail.com');
        $mail->setFrom('abc@gmail.com');
        $mail->Subject = 'Test';
        $mail->Body    = 'Testing';

        if($mail->send()) 
            echo 'Message has been sent';

         else 
            echo 'Message could not be sent.';
            echo 'Mailer Error: ' . $mail->ErrorInfo;
    




?>

我正在将 Github 库用于 php 电子邮件。 当我 var_dump($mail) ;它显示了数组中的所有数据。 现在,此代码显示错误:“SMTP connect() failed”

【问题讨论】:

你可以使用 show_error($mail->print_debugger()); 来检查细节吗? 您能否修改您的问题并格式化代码以使其可读?谢谢。如果您寻求帮助,那么您在我们的问题中付出的最小努力就是将其写下来,以便人们能够理解。 Codeigniter 有自己的邮件库codeigniter.com/user_guide/libraries/email.html PHPMailer to use Gmail as SMTP server.Could not connect to SMTP host. Mailer Error: SMTP Error: Could not connect to SMTP host的可能重复 【参考方案1】:

我也遇到了这个问题,请按以下步骤操作

转到 myaccount.google.com 点击“连接的应用和网站”, 将“允许安全性较低的应用”设置为“开启”(页面底部)。

【讨论】:

【参考方案2】:

我刚刚检查了您的代码,没有任何错误。你必须启用https://www.google.com/settings/security/lesssecureapps

<?php

include "PHPMailer_5.2.4/class.phpmailer.php";
   $mail = new PHPMailer;


        $mail->isSMTP();                               
        $mail->Host = 'smtp.gmail.com'; 
        $mail->SMTPAuth = true;                               
        $mail->Username = 'test@gmail.com';              
        $mail->Password = 'test@12123#';  
        $mail->SMTPSecure = 'ssl';
        $mail->Port = 465;  
        $mail->addAddress('abc@gmail.com');
        $mail->setFrom('abc@gmail.com');
        $mail->Subject = 'Test';
        $mail->Body    = 'Testing';

        if($mail->send()) 
            echo 'Message has been sent';

         else 
            echo 'Message could not be sent.';
            echo 'Mailer Error: ' . $mail->ErrorInfo;
    



?>

【讨论】:

我启用了安全性较低的应用程序和“包含 class.phpmailer.php”,但仍然出现错误:“找不到 SMTP”。 我正在使用这个库:“github.com/PHPMailer/PHPMailer” 实际上,您使用的是最新版本的 PHPmailer,包括正确的执行路径或下载github.com/shalinshah1993/ImPatho/tree/master/server%20code/…

以上是关于使用 php 中的 xampp 从本地服务器发送邮件的主要内容,如果未能解决你的问题,请参考以下文章

如何使用带有 XAMPP 的 PHP 从本地主机发送电子邮件?

无法使用汞 XAMPP 从本地主机发送 Drupal 通知邮件

如何使用本地 xampp 和 php 联系人表单从我的 mac 发送邮件

使用代码点火器和 gmail smtp 从本地主机上的 xampp 发送电子邮件

php localhost邮件没有使用xampp发送

来自本地主机的 XAMPP 和 PHP 邮件