Phpmailer gmail smtp tidak berfungsi

Mengirim email adalah tugas sederhana dan mudah di PHP. Ya. percayalah kepadaku. Untuk beberapa pemula dan terkadang bahkan yang sudah berpengalaman pun kesulitan untuk mengirim email menggunakan PHP

Mari kita selesaikan sekali selamanya dengan artikel ini

Mengirim email dengan fungsi inti PHP mail() lebih sederhana dan lebih mudah


Fungsi surat PHP ini tidak memiliki fitur canggih untuk mengirim email. Misalnya, kami tidak dapat mengirim lampiran menggunakan surat PHP (). Untuk mengirim email melalui SMTP Gmail Google, kami memerlukan opsi canggih

Jadi mari kita ambil rute terbaik dan terpopuler. Ada begitu banyak perpustakaan yang tersedia untuk PHP untuk tujuan yang berbeda. Jika ada satu perpustakaan yang terbaik dan paling banyak digunakan, itu adalah PHPMailer

Saat Anda ingin mengirim email dalam formulir kontak PHP, pada dasarnya Anda memerlukan server SMTP. Jika Anda tidak memiliki akses ke server SMTP, Anda dapat menggunakan SMTP GMail Google

Mari kita lihat cara mengirim email di PHP menggunakan library PHPMailer melalui SMTP Gmail. Berikut adalah struktur proyek. Lihat, library PHPMailer ditambahkan sebagai dependensi di folder vendor

Phpmailer gmail smtp tidak berfungsi

Kami akan menggunakan kelas PHPMailer untuk mengirim email dengan menggunakan server SMTP Gmail. Beberapa fitur PHPMailer adalah,

  • Mengizinkan teks biasa dan konten HTML sebagai badan email
  • Mengizinkan berbagai alamat email untuk. cc. bcc. membalas ke
  • Ini menyediakan enkripsi Aman/MIME
  • Ini mendukung berbagai teknik pengkodean biner, base64 dan lain-lain
  • Ini memiliki dukungan beberapa bahasa (Bahasa Inggris secara default)
  • Ini memberikan validasi email, otentikasi SMTP, pembungkus kata dan banyak lagi

Script PHP untuk Mengirim Email menggunakan SMTP Gmail

Penting untuk memiliki pustaka PHPMailer dalam proyek. Ada dua cara berbeda untuk memasukkannya ke dalam proyek Anda. Cara terbaik adalah menggunakan komposer dan menambahkannya sebagai ketergantungan pada file JSON

Jika Anda tidak memiliki pengetahuan atau belum pernah menggunakannya, saya sangat menyarankan Anda untuk belajar komposer. Ini adalah manajer ketergantungan populer di PHP dan akan sangat berguna

Tanpa komposer, Anda dapat mengunduh PHPMailer, unzip dan memasukkannya ke dalam folder vendor di proyek Anda. Dalam contoh ini, saya telah menggunakan metode yang sama

Saat kami mengirim email menggunakan SMTP Gmail, pastikan untuk menyetel SMTPAuth sebagai BENAR. Gunakan Nama Pengguna dan Kata Sandi Gmail Anda seperti yang diberikan di bawah ini. Kode contoh ini diadaptasi dari skrip contoh PHPMailer

SMTPDebug = SMTP::DEBUG_SERVER; // for detailed debug output
    $mail->isSMTP();
    $mail->Host = 'smtp.gmail.com';
    $mail->SMTPAuth = true;
    $mail->SMTPSecure = PHPMailer::ENCRYPTION_STARTTLS;
    $mail->Port = 587;

    $mail->Username = '[email protected]'; // YOUR gmail email
    $mail->Password = 'YOUR_GMAIL_PASSWORD'; // YOUR gmail password

    // Sender and recipient settings
    $mail->setFrom('[email protected]', 'Sender Name');
    $mail->addAddress('[email protected]', 'Receiver Name');
    $mail->addReplyTo('[email protected]', 'Sender Name'); // to set the reply to

    // Setting the email content
    $mail->IsHTML(true);
    $mail->Subject = "Send email using Gmail SMTP and PHPMailer";
    $mail->Body = 'HTML message body. Gmail SMTP email body.';
    $mail->AltBody = 'Plain text message body for non-HTML email client. Gmail SMTP email body.';

    $mail->send();
    echo "Email message sent.";
} catch (Exception $e) {
    echo "Error in sending email. Mailer Error: {$mail->ErrorInfo}";
}
?>
_

Untuk menyetel FromEmail dan FromName, kita dapat menggunakan fungsi SetFrom() atau menggunakan properti PHPMailer PHPMailer. Dari dan PHPMailer. Dari nama. Misalnya,

From = "from email address";
$mail->FromName = "from name";
?>

Fungsi AddReplyTo(), AddAddress() akan menerima array alamat email, dan nama bersifat opsional

Jika kita memiliki konten HTML sebagai badan surat, kita perlu mengatur teks isi/HTML dengan menggunakan,

$mail->IsHTML(true);

Setelah mengatur semua properti dan informasi mailer dengan objek PHPMailer, PHPMailer. fungsi send() mengembalikan BENAR pada transfer email yang berhasil dan FALSE pada kegagalan

Konfigurasi Google untuk mengirim email melalui SMTP Gmail

Saya tidak yakin apakah secara resmi disetujui oleh Google untuk menggunakan SMTP-nya
server untuk mengirim email dengan cara ini. Saya tidak melihat informasi apapun
melarangnya juga

  1. Nonaktifkan autentikasi dua faktor (Langkah ini berlaku, hanya jika
    Anda telah mengaktifkannya. )
  2. Izinkan “Akses aplikasi yang kurang aman”. Login ke akun Gmail Anda dan
    lalu masuk ke halaman https. //akun saya. google. com/lesssecureapps dan Turn
    itu Aktif
  3. Saat pertama kali menggunakan email smtp, Google 'mungkin' mengirim peringatan
    pesan kepada Anda seperti di bawah ini, Someone just used your password to try
    to sign in to your account from a non-Google app. Google blocked
    them, but you should check what happened. Review your account
    activity to make sure that no one else has access....
    _Login ke akun Gmail Anda dan berikan konfirmasi bahwa itu adalah Anda
    Bilang iya

Sekarang Anda dapat mengirim email dalam PHP menggunakan SMTP Google Gmail secara gratis. Lihat kode kotak masuk email Gmail khusus menggunakan PHP dengan IMAP

Mengapa SMTP untuk Gmail saya tidak berfungsi?

Periksa setelan SMTP, aktifkan aplikasi yang kurang aman, dan buka kunci Captcha . Konfirmasikan pengaturan SMTP formulir sudah benar. Aktifkan akses ke aplikasi yang kurang aman. Di browser ponsel Anda, buka https. //akun. google. com/DisplayUnlockCaptcha.

Bagaimana cara mengatur server SMTP untuk Gmail di PHP?

Menulis Kode PHP untuk Mengirim Email Menggunakan SMTP Gmail .
Langkah 1. Unduh pustaka PHPMailer dari tautan github ini. .
Langkah 2. Menulis Kode PHP untuk membuat koneksi SMTP. .
Langkah 3. Sertakan paket dan file untuk protokol PHPMailer dan SMTP. .
Langkah 4. Inisialisasi PHP Mailer dan atur SMTP sebagai protokol surat

Bagaimana cara menggunakan Gmail dengan PHPMailer?

Menggunakan PHPMailer. .
Unduh skrip PHPMailer
Unggah skrip PHPMailer ke akun hosting Anda
Contoh file konfigurasi bernama gmail. php untuk digunakan dengan server SMTP Google
Skrip ini berfungsi dengan server SMTP Google, Anda harus mengeditnya dan mengubah pengaturan seperti nama pengguna, kata sandi, dan alamat penerima email

Bagaimana cara menggunakan PHPMailer dengan Gmail 2022?

Masuk ke akun Gmail Anda dan buka Tab Keamanan. .
Mengonfigurasi SMTP Gmail untuk mengirim email. .
Menyiapkan Kata Sandi Aplikasi untuk PHPMailer di pengaturan Gmail. .
Membuat akses untuk koneksi aman SMTP PHPMailer dengan Gmail. .
Mendapatkan Kata Sandi Aplikasi untuk SMTP Gmail untuk digunakan di PHPMailer