php - 我无法通过 PHPMailer 和 Gmail SMTP 使用联系表发送邮件

标签 php html email

我正在尝试使用 PHPMailer 和 Gmail SMTP 从联系人发送电子邮件,我实际上不知道问题出在哪里? 我下载PHPMailer from githup. 我试着做 this gay did.

contact.html

  <form action="contact.php" method="POST" class="p-5 ">
            <div class="row form-group">
              <div class=" mb-3 ">
                <label class="text-black" for="first-name">الاسم الاول</label>
                <input type="text" name="first-name" class="form-control" />
              </div>
              <div class="col">
                <label class="text-black" for="last-name">الاسم الاخير</label>
                <input type="text" name="last-name" class="form-control" />
              </div>
            </div>

            <div class="row form-group">
              <div class="col">
                <label class="text-black" for="email">إيميل</label>
                <input type="email" name="email" class="form-control" />
              </div>
            </div>

            <div class="row form-group">
              <div class="col">
                <label class="text-black" for="subject">الموضوع</label>
                <input type="subject" name="subject" class="form-control" />
              </div>
            </div>

            <div class="row form-group">
              <div class="col">
                <label class="text-black" for="message"
                  >محتوى الرسالة</label
                >
                <textarea
                  name="message"
                  cols="30"
                  rows="7"
                  class="form-control"
                  placeholder="اكتب هنا ..."
                ></textarea>
              </div>
            </div>

            <div class="row form-group">
              <div class="col2">
                <input
                  type="submit"
                  name="submit"
                  value="إرسال"
                  class="px-4 text-white"
                />
              </div>
            </div>
          </form>

contact.php

 <?php

       $result="";

if (isset($_POST['submit'])){
require 'PHPMailer/PHPMailerAutoload.php';
$mail = new PHPMailer;

$mail->isSMTP(); 
$mail->Host='smtp.gmail.com';
$mail->Port=587;
$mail->SMTPAuth=true;

$mail->SMTPSecure='tls'; 
$mail->Username='secret';
$mail->Password='secret';

$mail->setForm($_POST['email'],$_POST['first-name']);
$mail->addAddress('secret');
$mail->addReplyTo($_POST['email'],$_POST['last-name']);


$mail->isHTML(true);
$mail->subject='Contact Us: '.$_POST['subject'];
$mail->Body='<h1 align=center>الأسم :'.$_POST['first-name'].$_POST['last-name'].' الايميل: '.$_POST['email'].' العنوان: '.$_POST['subject'].' العنوان: '.$_POST['message'].'</h1>';

if(!$mail->send()){
    $result="حدث خطاء حاول مرة اخرى ، وشكراً";
}
else{
    $result="شكراً".$_POST['fname']."لتواصلك معنا ،سيتم الرد عليكم 
        قريباً";
  } 
 }
 ?>

错误信息页面不存在

谢谢

最佳答案

如果您为您的 gmail 帐户启用了两步验证,gmail 将不允许您通过您的应用程序发送电子邮件。您必须生成应用程序密码并使用它来发送邮件。在此处查看如何生成应用程序密码以从第三方应用程序使用。 https://support.google.com/accounts/answer/185833?hl=en

关于php - 我无法通过 PHPMailer 和 Gmail SMTP 使用联系表发送邮件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56370840/

相关文章:

php - 在 PHP 中,如何从文本 block 中提取多个电子邮件地址并将它们放入数组中?

HTML 电子邮件 : How do I remove spacing between 2 tables? Gmail 特别

php - 如何使用 php rest 范围在 outlook 日历上编写事件?

php - 在页面/浏览器关闭/退出时自动保存/提交表单

html - 如何使用 CSS 实现多重渐变

javascript - 使用 angularJS 获取数据

javascript - 使用 NodeJS 处理电子邮件

php - 基于表本身和不同表的顺序表输出

php - 拉维尔 : For each where clause

html - CSS 悬停过渡