Cara Kirim Email dari Localhost dengan PHP dan PHPMailer
Mengirimkan email ke seseorang dalam suatu project yang dibuat dengan php tidak harus upload projectnya ke server terlebih dahulu, akan tetapi dari local/localhost pun dapat dilakukan.
Bagaimana caranya?
Caranya adalah kita menggunakan bantuan dari plugin PHPMailer. PHPMailer merupakan salah 1 library bantuan yang dapat memberikan kita fitur pengiriman email dari local ke email tujuan pada project yang dibuat.
Saya memberikan contoh langsung dari salah 1 tutorial saya yang berjudul DVD Tutorial Perancangan Website Toko Online/ E-Commerce Responsive Berbasis PHP, MySqli, dan Bootstrap.
Baiklah langsung saja tanpa banyak basa-basi lagi, silahkan perhatikan langkah-langkahnya berikut ini:
- Download dulu library PHPMailernya disini atau sumber aslinya disini
Perhatikan script dibawah ini:
<?php // Import PHPMailer classes into the global namespace // These must be at the top of your script, not inside a function use PHPMailer\PHPMailer\PHPMailer; use PHPMailer\PHPMailer\SMTP; use PHPMailer\PHPMailer\Exception; // Load Composer's autoloader require 'vendor/autoload.php'; if(isset($_POST['submit'])) { // Instantiation and passing `true` enables exceptions $mail = new PHPMailer(true); $no_invoice = $_POST['no_invoice']; $nama_pengirim = $_POST['nama_pengirim']; $email = $_POST['email']; //Server settings // $mail->SMTPDebug = SMTP::DEBUG_SERVER; // Enable verbose debug output $mail->isSMTP(); // Send using SMTP $mail->Host = 'smtp.gmail.com'; // Set the SMTP server to send through $mail->SMTPAuth = true; // Enable SMTP authentication $mail->Username = 'namaEmailAnda'; // SMTP username $mail->Password = 'passwordEmailAnda'; // SMTP password // $mail->SMTPSecure = PHPMailer::ENCRYPTION_STARTTLS; // Enable TLS encryption; `PHPMailer::ENCRYPTION_SMTPS` encouraged $mail->Port = 587; // TCP port to connect to, use 465 for `PHPMailer::ENCRYPTION_SMTPS` above //Recipients $mail->setFrom('namaemail', 'Percobaan'); $mail->addAddress($email, $nama_pengirim); // Add a recipient $mail->addReplyTo('namaemail', 'Percobaan'); // $mail->addCC('[email protected]'); // $mail->addBCC('[email protected]'); // Attachments // $mail->addAttachment('/var/tmp/file.tar.gz'); // Add attachments // $mail->addAttachment('/tmp/image.jpg', 'new.jpg'); // Optional name // Content $mail->isHTML(true); // Set email format to HTML $mail->Subject = 'Konfirmasi Pembayaran dari Localhost'; $mail->Body = '<h1>Halo, Admin.</h1> <p>Ada pesanan baru dengan nomor invoice '.$no_invoice.'</p> '; if($mail->send()) { echo 'Konfirmasi pembayaran telah berhasil'; } else{ echo "Message could not be sent. Mailer Error: {$mail->ErrorInfo}"; } } else{ echo "Tekan dulu tombolnya bos"; }
- Silahkan ganti nilai username, password dan addAddress dengan akun yang Anda miliki.
- Akun gmail yang digunakan tidak boleh dilindungi dengan 2 step verification atau lebih baik Anda buat 1 email yang baru tanpa ada pengaturan tambahan lain seperti 2 step verification atau recovery email. Silahkan baca disini untuk tutorialnya: Cara Mengaktifkan Allow Less Secure Apps Access pada Akun Google.
- Atau Anda bisa download file source codenya di github disini
Anda juga dapat langsung melihat praktek kodingnya melalui video berikut ini:
Silahkan ajukan pertanyaan di kolom komentar apabila menemukan problem saat Anda mencobanya dan semoga bermanfaat.
Artikel Terkait
Cara Mudah Install Composer di OS Linux
Composer adalah sebuah project open source yang dimotori oleh Nils Adermann dan Jordi Boggiano. Project composer ini dihost di github dan we...
SelengkapnyaCara Install Apache, MySQL, dan PHP di OS Linux (LAMPP)
LAMPP adalah kependekan nama dari Linux, Apache, MySQL, PHP / Perl / Python yang berguna sebagai salah satu komponen dalam pembuatan website. Linux se...
SelengkapnyaMengetahui Kecepatan dan Pemakaian Internet dengan NetSpeedMonitor pada Windows 10
Software ini dapat dibilang sebagai pemberi informasi kepada kita tentang seberapa tinggi kecepatan download dan upload internet yang kita gunakan. So...
SelengkapnyaCara Install PHP 7.4 dan Versi Lain di Linux Debian 12 Bookworm
Apakah Anda mengalami kesulitan dalam menginstal PHP di Debian 12? Dengan kebutuhan pengembangan yang terus berkembang, memiliki beberapa versi PHP da...
Selengkapnya- Membuat Auto Complete Tag PHP pada Visual Studio Code
- Cara Mendownload Git Repository atau Sebuah Project di Github
- Cara Install PhpMyAdmin di Laragon
- Cara Mengatur Waktu dan Tanggal di MySQL Secara Otomatis Setelah Input atau Update Data
- Cara Mengaktifkan Allow Less Secure Apps Access pada Akun Google