Hallo, CodeIgniter Tutorial is back! Dan edisi tutorial kali ini ditulis berdasarkan request dari pembaca. Pekan lalu, saya menerima beberapa email yang berisi request untuk membuat tutorial tentang membuat fitur forgot password atau reset password pada CodeIgniter. And FYI, edisi kali ini merupakan lanjutan seri tutorial CodeIgniter edisi Membuat Simple Login dan Register Menggunakan CodeIgniter. So, pastikan kamu sudah membaca edisi tersebut sebelum mencoba tutorial ini yaa.. Show * * *
Karena edisi kali ini lanjutan dari edisi tutorial sebelumnya, sudah pasti fitur forgot password atau reset password ini termasuk fitur yang mesti ada dalam sistem autentifikasi atau sistem registrasi dan login. Biasanya dalam sistem autentifikasi ada kebutuhan supaya user bisa menggunakan aplikasi kembali, apabila mereka lupa password mereka. Kita sendiri juga kadang lupa password yang digunakan bukan? Nah, untuk itu kita perlu fitur forgot password dan inilah alur yang akan kita gunakan pada fitur forgot password ini:
So, kita akan membutuhkan form untuk melayani permintaan untuk reset password, mekanisme untuk pemberitahuan dengan unique token, lalu, form lain yang digunakan untuk mereset password. Sudah kebayang 'kan alurnya? Yuk kita mulai! Task 1: PersiapanYa, karena edisi kali ini lanjutan seri tutorial CodeIgniter edisi Membuat Simple Login dan Register Menggunakan CodeIgniter, so, kita akan memakai project yang sudah kita buat di edisi tersebut, lalu menambahkan fitur forgot password. Task 2: Membuat Tabel tokensTabel ini digunakan untuk menyimpan token yang dikirim ke email. Kita akan menambahkan tabel Nah, untuk membuat tabel
Task 3: Memodifikasi Model (M_account.php)Ada beberapa method yang mesti kita tambahkan dalam class
Nah,
sekarang buka file model Kalau sudah dibuka filenya, kita bisa lihat class
Kalau sudah, jangan lupa save kembali file Ok, next step... Task 4: Membuat View BaruBiasanya fitur forgot password itu ada di halaman login. So, sebelum membuat kedua file Sekarang buka text editor kesayanganmu, lalu buka file Di
file
Nah, kita modifikasi baris code di atas dengan code di bawah:
Kita tambahkan link menuju halaman untuk fitur forgot password. Jadi, nanti isi
Kalau sudah selesai, tekan ctrl+s untuk menyimpan kembali file Ok, sekarang waktunya kita buat file view yang baru. Pertama, kita buat file
Ya, simpan dengan nama . . . Kedua, kita buat file
Yep, setelah selesai, kita simpan dengan nama Sekarang kita punya dua file baru, yaitu file Task 5: Membuat File Controller (Lupa_password.php)Selanjutnya kita buat file controller dengan nama
Sekarang buka kembali text editor kesayanganmu, lalu ketik kode di bawah ini yaa!
Kalau sudah selesai, simpan file controller dengan nama Task 6: Uji Coba ProjectYuk, sekarang kita coba run project kita! Buka browser lalu buka alamat Ya, tampil halaman untuk login. Sekarang kita coba klik link 'Lupa Password'. Lalu kamu coba masukkan email untuk mencoba fitur forgot password. Setelah kita klik tombol 'Submit', kita akan melanjutkan ke halaman yang berisi link untuk melakukan reset code. Di dalam code yang kita buat, kita hanya meng-generate token lalu membuat link dan kemudian kita 'echo' di browser. Perlu kita ingat, link inilah yang nantinya kita kirim ke email user, tapi untuk alasan demo project kita hanya perlu menampilkannya di browser. Link tersebut tampak seperti pada gambar ini: Di dalam link tersebut berisi token yang unik. Saat kita klik link, kita akan masuk ke halaman reset
password. Nah, dalam prosesnya, sistem akan memastikan kalau token itu valid dengan menggunakan method Sekarang kita coba klik link dengan token, akan tampil halaman reset password seperti gambar di bawah: Selanjutnya coba isi password baru sesuka hati, lalu klik tombol reset. Kalau berhasil, kita akan dialihkan ke halaman login. Bisa kita lihat ada notifikasi kalau password kita sudah diperbaharui. Nah, sekarang kita bisa login menggunakan password yang baru. * * * Dalam sistem login dan registrasi atau yang kita ketahui sebagai sistem autentifikasi, terdapat fitur forgot password atau reset password. Fitur ini dibuat karena ada kebutuhan apabila user kita lupa password akun mereka. Di edisi tutorial kali ini kita sudah membahas tentang alur dan pemahaman dasar fitur forgot password. Dan perlu diingat, code dalam tutorial ini tidak ditujukan untuk production code. Ada banyak yang perlu dikembangkan, tapi setidaknya tutorial ini cukup untuk memahami dasarnya. Semoga bermanfaat. Tetap semangat berkarya ya! Happy coding! |