я не могу отправить почту, используя контактную форму с PHPMailer и Gmail SMTP - PullRequest
2 голосов
/ 30 мая 2019

Я пытаюсь отправить электронное письмо от контакта с помощью PHPMailer и Gmail SMTP. На самом деле я не знаю, в чем проблема? Я загружаю PHPMailer из githup. Я пытался сделать это так, как этот гей сделал.

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']."لتواصلك معنا ،سيتم الرد عليكم 
        قريباً";
  } 
 }
 ?>

страница сообщения об ошибке не существует

спасибо

Ответы [ 2 ]

0 голосов
/ 31 мая 2019

я нашел проблему, но не понял, почему в строке 18 в файле php
$ mail-> setForm ($ _ POST ['email'], $ _ POST ['first-name']);если я удаляю его, я могу отправить письмо на мою учетную запись gmail.кто-нибудь может сказать, о чем это?а если сообщение на арабском языке, оно не прочитает его?

0 голосов
/ 30 мая 2019

Если для вашей учетной записи gmail включена двухэтапная проверка, gmail не позволит вам отправлять электронную почту через ваше приложение.Вы должны сгенерировать пароль приложения и использовать его для отправки почты.Проверьте здесь, как генерировать пароль приложения для использования из сторонних приложений.https://support.google.com/accounts/answer/185833?hl=en

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...