【问题标题】:perfect contact us form Issue [duplicate]完美的联系我们表格问题[重复]
【发布时间】:2017-12-18 01:05:24
【问题描述】:

有人用过forest_of_code/PerfectCode 的“Perfect Contact Us Form”吗?

我不断收到错误消息:“糟糕!出了点问题。请检查您的详细信息。”

我一步一步按照编码员的说明进行操作,并多次检查我没有打错任何东西。我也确信我的主机允许通过 SMTP 发送邮件。我正在尝试使用 gmail smtp 发送邮件。我在我的帐户上启用了“允许不太安全的应用程序”,但我没有使用 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 = "XXXXXX@gmail.com";
            $mail->Password = "xxxxxxxxxxxxx";
            $mail->setFrom($to, $name);
            $mail->addAddress('XXXXXXXX@gmail.com', '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]...*/

【问题讨论】:

  • 看起来您拥有的邮件对象具有 ErrorInfo 属性。您可能想从那里开始并获取消息。这会有所帮助。
  • 我已经尝试过了,但它给出的只是错误的凭据,我知道事实并非如此。我刚刚偶然发现一篇将近 5 年的帖子,其中提到这条线是问题$mail-&gt;isSMTP();。我删除了它,它工作得很好。一直试图为 daaaaays 找到解决方案
  • 是的,在我问了这个问题之后才意识到。我一直在四处寻找并尝试删除此帖子,但我无法在任何地方找到它。我还是新来的,所以我可能需要一点时间才能知道如何删除它

标签: php email contact-form


【解决方案1】:

这已经在大约 5 年前得到回答。我再次发布这个只是因为人们仍然像我一样遇到这个问题。我在这里找到了解决方案:send email using Gmail SMTP server through PHP Mailer

基本上我所要做的就是删除这一行$mail-&gt;isSMTP();

我很感谢那个用户,我几天来一直在寻找解决方案,直到我偶然发现他的问题,他自己回答了:D

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2016-07-30
    • 1970-01-01
    • 2017-08-26
    • 2012-06-12
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多