Sat Jan 2020 2 years ago

Cara Membuat Email Verification di Laravel 6

Membuat Email Verification di Laravel 6 - Email verification ini berguna banget jika kalian membuat sebuah website yang memiliki form register karena saat user atau pengguna register melalui website harus melakukan verifikasi melalui email yang dikirim secara otomatis oleh website kita. Diadalah Framework Laravel sudah di sediakan sehingga kita dengan mudah untuk membuat sebuah email verifikasi. 

 

Pertama pastikan kamu sudah mengintal framework laravel atau membuat project laravel. Jika belum silahkan kamu buat terlebih daluhu. Untuk membuat project laravel silakan copy paste script dibawah ini dan jalankan dengan command promp (CMD).

composer create-project --prefer-dist laravel/laravel blog

setelah proses instalasi project laravel sukses, silahkan setting connection databasenya di file .env

DB_CONNECTION=mysql
DB_HOST=127.0.0.1
DB_PORT=3306
DB_DATABASE=blog
DB_USERNAME=root
DB_PASSWORD=

Kemudian masuk ke dalam folder app\Providers\AppServiceProvider.php buka filenya dan tambahkan seperti dibawah ini:

<?php

namespace App\Providers;
use Illuminate\Support\ServiceProvider;
use Illuminate\Support\Facades\Schema;

class AppServiceProvider extends ServiceProvider
{
    /**
     * Register any application services.
     *
     * @return void
     */
    public function register()
    {
        //
    }


    /**
     * Bootstrap any application services.
     *
     * @return void
     */
    public function boot()
    {
        Schema::defaultStringLength(191);
    }
}

Lalu buka file User.php di dalam direktori app\User.php tambahkan script implements MustVerifyEmail pada class user. Contoh seperti di bawah ini.

class User extends Authenticatable implements MustVerifyEmail
{
  use Notifiable;

    // ...

}

Buat kolom email verification dengan menjalankan perintah php artisan migrate. Setelah itu kita daftarkan ke route untuk mengirimkan tautan verifikasi melalui email. buka file Web.php didalam direktori routes. Rubah hingga jadi seperti dibawah ini:

Auth::routes(['verify' => true]);

Melindungi Rute

untuk melindungi route memungkinkan pengguna yang terverifikasi mengakses route yang diberikan. Laravel mengirim dengan verifiedmiddleware, yang didefinisikan pada . Karena middleware ini sudah terdaftar di kernel HTTP aplikasi Anda, yang perlu Anda lakukan adalah melampirkan middleware ke definisi rute:

Route::get('profile', function () {
    // Only verified users may enter...
})->middleware('verified');

Tahap terakhir silahkan jalankan project anda dengan perintah php artisan serve dan jangan lupa agar bisa mengirim email silahkan setting pengaturan email di .env seperti dibawah ini:

MAIL_DRIVER=smtp
MAIL_HOST=mail.webanda.com
MAIL_PORT=587
[email protected]
MAIL_PASSWORD=12345678
MAIL_ENCRYPTION=tls

 

SELESAI. Silahkan kamu coba apakah sudah berhasil.

tutorial laravel laravel 6 email verification laravel laravel