Kirim Email Dengan Laravel – Salah satu fitur keren dari laravel adalah adanya fitur untuk mengirim email dengan mudah. laravel sudah menyediakan fitur ini secara default pada saat kita menginstall project laravel.
Sebagai percobaan pada masa development aplikasi dengan laravel, untuk percobaan email kita bisa menggunakan mailtrap.io. seperti yang sudah dijelaskan juga sebelumnya tentang mailtrap.io.
mailtrap.io merupakan SMTP server palsu untuk testing. jadi kita bisa menggunakan mailtrap.io untuk penanganan email pada aplikasi yang sedang kita bangun.
misalnya seperti membuat percobaan simulasi pengiriman email dan menampilkan tampilan email yang dikirim.
Pada tutorial membuat pengiriman email pada laravel ini kita akan belajar bagaimana caranya mengirim email menggunakan laravel, tidak hanya mengirim email biasa.
kita juga akan belajar tentang cara mendesain konten email yang dikirim. agar tampilan emailnya lebih terkesan premium dan menarik.
Kirim Email Dengan Laravel
Contoh mengirim email dengan laravel yang pertama kita akan menggunakan mailtrap.io. baru kemudian kita akan mencoba mengirim email dengan gmail dengan laravel (Gmail SMTP Server).
Konfigurasi mailtrap
Karena kita akan menggunakan mailtrap.io, maka kita wajib mendaftar untuk membuat akun di mailtrap.io.
Sehingga nantinya email yang kita kirim dari laravel akan masuk ke kotak masuk atau inbox di mailtrap.io.
Saya anggap teman-teman sudah mendaftar/membuat akun, kemudian silahkan langsung login. sehingga kita akan diberikan username dan password dari mailtrap.
kirim email dengan laravel
Kemudian copyusername dan password yang kita dapatkan di atas. paste ke pengaturan mail laravel yang ada pada file .env laravel.
Kemudian buka file .env proyek laravel kita. pastekan username password tersebut. sehingga menjadi seperti berikut.
1
2
3
4
5
6
MAIL_DRIVER=smtp
MAIL_HOST=smtp.mailtrap.io
MAIL_PORT=2525
MAIL_USERNAME=a824c848c8df5f
MAIL_PASSWORD=9fc382e60875f3
MAIL_ENCRYPTION=null
INGAT! isi username dan password tersebut sesuai dengan username dan password yang teman-teman dapatkan pada akun mailtrap temap-teman masing-masing.
Karena jika menggunakan username dan password akun saya, email tidak akan masuk, karena masing-masing akun mailtrap diberikan username dan password yang berbeda-beda.
Jadi silahkan isi dengan username dan password dari akun mailtrap yang teman-teman dapatkan.
Setelah melakukan konfigurasi mail laravel. kita lanjutkan dengan membuat class Mailable laravel. kita bisa membuatnya dengan menggunakan perintah artisan.
Berikut ini perintah php artisan untuk membuat class mailable.
php artisan make:mail MalasngodingEmail
dengan mengetik perintah artisan di atas, maka laravel akan membuatkan class mailable MalasngodingEmail.php untuk kita. yang terletak pada app/Mail/MalasngodingEmail.php.
kita abaikan saja dulu MalasngodingEmail.php nya. agar lebih mudah dipahami materinya.
Kita lanjut ke membuat route. buat satu buah route baru untuk membuat url yang bertugas menangani pengiriman emailnya.
Nah, perhatikan pada controller di atas. karena kita akan menggunakan fitur Mail Laravel, maka kita wajib memanggil Facades Mail dan Class Mailable MalasngodingEmail.php.
1
2
use App\Mail\MalasngodingEmail;
use Illuminate\Support\Facades\Mail;
Kemudian pada method index() ini kita bisa langsung memerintahkan untuk mengirim email dengan mengisi tujuannya ke “testing@malasngoding.com“.
dan class Mailable yang akan kita gunakan adalah MalasngodingEmail.
Oke untuk sementara selesai, dan sekarang buka class Mailable MalasngodingEmail.php. ubah isinya menjadi seperti berikut.
app/Mail/MalasngodingEmail.php
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
<?php
namespace App\Mail;
use Illuminate\Bus\Queueable;
use Illuminate\Mail\Mailable;
use Illuminate\Queue\SerializesModels;
use Illuminate\Contracts\Queue\ShouldQueue;
classMalasngodingEmailextendsMailable
{
use Queueable,SerializesModels;
/**
* Create a new message instance.
*
* @return void
*/
public function __construct()
{
}
/**
* Build the message.
*
* @return $this
*/
public function build()
{
return$this->from('pengirim@malasngoding.com')
->view('emailku')
->with(
[
'nama'=>'Diki Alfarabi Hadi',
'website'=>'www.malasngoding.com',
]);
}
}
Perhatikan method build() pada class Mailable MalasngodingEmail.php di atas. pada method ini kita mendesain isi emailnya. misalnya dengan mengisi email pengirimnya “pengirim@malasngoding.com“.
Kita juga menggunakan view, yang mana view ini yang akan menjadi template emailnya. kita juga mempassing dua buah data ke view emailku.blade.php.
yaitu data nama dan website.
1
2
3
4
5
6
7
8
9
10
public function build()
{
return$this->from('pengirim@malasngoding.com')
->view('emailku')
->with(
[
'nama'=>'Diki Alfarabi Hadi',
'website'=>'www.malasngoding.com',
]);
}
Atau jika teman-teman ingin melampirkan file dalam email teman-teman bisa menambahkan method attach() seperti contoh dibawah.
<p>Selamat datang di<ahref="https://www.malasngoding.com/kirim-email-dengan-laravel/">www.malasngoding.com</a></p>
<p>Tutorial Laravel#35 : kirim email dengan laravel.</p>
View emailku.blade.php ini yang akan menjadi isi dari email. dimana kita menampilkan data nama dan data website yang di passing dari Mailable MalasngodingEmail.php sebelumnya.
Contoh Kirim Email Dengan Laravel
Oke, kita coba. jalankan proyek laravelnya.
php artisan serve
dan akses
localhost:8000/kirimemail
Pada saat mengakses route tersebut maka email akan dikirim ke mailtrap.io. dimana sebelumnya juga sudah dijelaskan bahwa mailtrap.io ini menjadi tempat percobaan email pada saat mendevelop proyek aplikasi.
Sekarang buka inbox mailtrap.io. maka akan ada email baru yang masuk.
mengirim email pada laravel
Seperti yang terlihat pada gambar di atas, email pun berhasil masuk. sesuai dengan yg kita buat pada view emailku.blade.php tadi.
Sampai di sini, selesai sudah proses pembuatan fitur kirim email pada laravel. menggunakan mailtrap sebagai server percobaannya.
Mengirim Email Pada Laravel Dengan Gmail
Cara menggunakan gmail untuk pengiriman email (SMTP gmail), silahkan teman-teman sesuaikan konfigurasi mail laravel pada file .env.
1
2
3
4
5
6
MAIL_DRIVER=smtp
MAIL_HOST=smtp.googlemail.com
MAIL_PORT=465
MAIL_USERNAME=namaemail@kamu.com
MAIL_PASSWORD=passwordkamu
MAIL_ENCRYPTION=ssl
isi pengaturan mail laravel teman-teman seperti di atas.
Selesai sudah tutorial pengiriman email menggunakan laravel. terima kasih :).
Diki Alfarabi Hadi
Coding enthusiast.
Someone who love learn something new. especially about web programming and web design. happy to share about knowledge and learn from other.
Action URL Laravel – Action URL adalah sebuah fitur pada laravel untuk tujuan generate URL ke controller, dan juga bisa mengirimkan data parameter seperti pada ...
Multi Bahasa Localization Laravel – Multi bahasa merupakan fitur pada website untuk menampilkan informasi dalam berbagai bahasa. Laravel telah menyediakan fitur multi bahasa. sehingga untuk ...
Import Excel Laravel – Setelah sebelumnya kita belajar tentang membuat export atau cetak laporan excel pada laravel, seperti ada yang kurang jika kita tidak membahas ...
Export Excel Laravel – Fitur export atau cetak laporan excel merupakan salah satu fitur yang paling penting. bagi teman-teman yang sering membuat aplikasi pesanan dari ...
Download Ebook belajar HTML & CSS dasar untuk pemula gratis.
Ebook ini bisa di download oleh teman-teman yang baru mulai belajar HTML dan CSS dasar tapi tidak tahu mau memulai belajar dari mana.
materi pembelajaran sudah di susun secara sistematis dan di dukung contoh gambar.
untuk import email gmail ke aplikasi laravel kita gimana kak ?