Tutorial Cara Kirim Email di Laravel

Share:

Halo semuanya, kembali lagi di sahretech. Baiklah pada kesempatan yang berbahagia kali ini :), kita akan belajar bagaimana cara mengirim email di laravel. Penasaran?, ayo ikuti tutorialnya berikut ini.


Laravel adalah salah satu framework all in, yang artinya semua fitur lengkap ada di dalamnya, fitur-fiturnya seperti authentication, migration, api service, dan masih banyak fitur lainnya. Salah satu fitur yang akan kita bahas kali ini adalah fitur kirim email yang telah disediakan oleh si laravel.

Pada percobaan pertama, kita akan mencoba mengirimkan email dengan mailtrap.io. Mailtrap.io adalah fake server email yang biasa digunakan untuk simulasi dan testing email. Saya juga pernah menyinggung mailtrap.io pada tulisan saya berikut ini https://www.sahretech.com/2021/01/cara-membuat-konfirmasi-email.html.

Baca Artikel Lain ✨
📰 1. Cara Transfer File dari Hosting ke Windows dengan Filezilla FTP read more
📰 2. Cara Transfer dan Membuka File Hosting di Windows dengan FTP read more
📰 3. Cara Membuat Import Data Excel ke Database Mysql dengan php read more
📰 4. Cara Membuat Peta Digital dengan Leafletjs, Alternatif Peta Digital tanpa Google Maps API read more

Cara Kirim Email di Laravel

Untuk melakukan pengiriman email dengan laravel kita perlu melakukan sedikit konfigurasi, kita juga perlu mendaftar email di mailtrap.io dan akhirnya membuat isi emailnya dengan blade. pada tutorial kali ini, kita tidak menggunakan database agar tutorialnya lebih mudah dipahami dan lebih singkat.

1. Membuat Email di Mailtrap.io

1.1 Buatlah akun baru terlebih dahulu di mailtrap.io. Cara membuat akunnya sangat mudah, jadi tidak saya jelaskan disini ya😀.
1.2 Kemudian, Buatlah inbox baru jika sebelumnya belum ada, dan silahkan isi nama inbox sesuai keinginan. Setelah inbox selesai dibuat klik inbox tersebut untuk masuk. Ikuti penjelasannya pada gambar di bawah ini.

Mengirim email dengan laravel
Membuat inbox baru


1.3 Lalu di sebelah kanan, pilih laravel pada bagian integrations. Lalu kalian akan melihat cara setting email di laravel. Silahkan copy script tersebut. Script tersebut akan kita gunakan pada file .env nantinya.

Mengirim email di laravel
Inbox dan konfigurasi



2. Instalasi Laravel dan Setting File .env

2.1 Lakukan instalasi laravel 7 dengan menjalankan perintah di bawah ini menggunakan terminal atau cmd. Uuntuk lokasi folder bebas kalian tentukan sendiri.
    

composer create-project --prefer-dist laravel/laravel:^7.0 latihan_email

2.2 Setelah instalasi selesai, selanjutnya buka file .env lalu editlah bagian email dengan menggunakan script yang telah kalian dapatkan sebelumnya dari mailtrap.io. Dan jangan lupa juga untuk mengisi MAIL_FROM_ADRESS dengan alamat email pengirim. Silahkan ikuti instruksinya seperti gambar di bawah ini.

Mengirim email di laravel
Konfigurasi file .env



2.3. Jalankan perintah di bawah ini, dengan menggunakan cmd atau terminal. Perintah di bawah ini berfungsi untuk menghapus cache sebelumnya dan agar pengaturan pada file .env menjadi yang terbaru

    

php artisan config:cache


3. Membuat Mail dan Desain Email

3.1 Jalankan perintah di bawah ini untuk membuat class LatihanEmail.php di dalam folder app/Mail. Lalu copy script di bawah ini dan pastekan ke dalam file tersebut.
    

php artisan make:mail LatihanEmail

3.2. Kemudian bukalah file LatihanEmail.php, lalu cari function build() dan ganti isinya seperti script di bawah ini.
        

public function build() {     //kalian bisa mengirim variabel yang berasal dari database ke view     //bisa menggunakan eloquent atau query builder dan diparsing ke view     return $this->view('email'); }


3.3 Buatlah sebuah file baru dengan nama email.blade.php di dalam folder resources/views. Lalu copy script di bawah ini dan pastekan ke dalam file tersebut.
        

<h1>Judul Email Kalian</h1> <p>Lorem Ipsum is simply dummy text of the printing and typesetting industry</p>

Kalian bisa mendesain model email yang diinginkan dengan menggunakan html nantinya. Script di atas hanya contoh sederhana dalam pengiriman email.


4. Membuat Controller dan Route

4.1 Buatlah sebuah controller baru dengan menjalankan perintah di bawah ini
    

php artisan make:controller EmailController

4.2 Buka file EmailController.php yang telah dibuat sebelumnya di dalam folder app/Htpp/controller. Lalu copy dan paste script di bawah ini
        

<?php     namespace App\Http\Controllers;     use Illuminate\Http\Request;     use App\Mail\LatihanEmail; //import juga LatihanEmail     use Illuminate\Support\Facades\Mail; //jangan lupa import ini     class EmailController extends Controller     {         public function index(){             //isi Mail::to(...) dengan email tujuan yang kalian inginkan             Mail::to("testing@email.com")->send(new LatihanEmail());         }     }


4.3 Buatlah routing baru, buka file web.php di dalam folder routes. Lalu tambahkan script di bawah ini ke dalam file tersebut.
    

Route::get('/sendmail', 'EmailController@index');


5. Uji Coba

Silahkan jalankan perintah php artisan serve. Lalu buka browser dan ketik url http://127.0.0.1:8000/sendmail Selanjutnya buka mailtrap.io dan masuk ke dalam inbox. Hasilnya akhirnya akan tampak seperti gambar di bawah ini

Mengirim email di laravel
Email berhasil dikirim



Terlihat pada email yang berhasil dikirimkan di atas, lengkap dengan judul, nama pengirim, nama penerima, dan tentunya isi dari email itu sendiri. Kalian bisa melakukan improvisasi lagi dengan menggunakan desain email yang menarik, dan dipadukan dengan data langsung dari database.

Kalo mau menambahkan data dari database, kalian tinggal sisipkan data di bagian LatihanEmail.php, cara pemanggilannya bisa menggunakan eloquent atau query builder. Lalu tinggal parsing ke viewnya saja seperti parsing dari controller ke view ya.

Sekian tutorial cara mengirim email di laravel. Semoga bermanfaat, jika ada yang sulit dipahami silahkan tanya langsung di kolom komentar di bawah ini. InsyaAllah saya akan siap berdiskusi dan membantu :). Sampai jumpa di tutorial laravel lainnya.


No comments

Kalo baca, tolong kasih komentar dong!. Karena komentar kalian membantu kami menyediakan informasi yang lebih baik