Membuat login dengan session di codeigniter 2.1.0 bagaimana sih ??
sulit apa mudah ?
kalau sudah bisa sih mudah, kalau yang belum mengimplementasikan secara langsung, mungkin sedikit bingung.
sulit apa mudah ?
kalau sudah bisa sih mudah, kalau yang belum mengimplementasikan secara langsung, mungkin sedikit bingung.
Ok, pada kali ini saya ingin membuat sedikit tutorial create form login with session, didalam codeigniter 2.1.0, database dan session itu sendiri dibawah libraries codeigniter, sedangkan form berada dibawah helper codeigniter, ok, Langsung saja,.
1. Saya asumsikan temen - temen paham menggunakan xampp, atau lampp, Download Codeigniter 2.1.0 terlebih dahulu
2. Extract codeigniter tersebut menjadi ci
3. Buat database ci kemudian jalankan syntax create tabel dibawah ini untuk menampung data user :
4. Apabila ketiga langkah diatas sudah dijalankan, edit config.php yang ada didalam folder ci/application/config/config.php menjadi :
5. Edit konfigurasi autoload.php yang ada didalam satu folder dengan config.php sebelumnya,
6. Edit konfigurasi database.php yang ada didalam satu folder dengan config.php sebelumnya,
7. Edit konfigurasi routes.php yang ada didalam satu folder dengan config.php sebelumnya,
8. Buat model, dengan nama m_user.php simpan kedalam folder ci/application/model isi model :
9. Buat controller c_login untuk mengatur model tersebut simpan kedalam folder ci/application/controller , isi controller :
10. Buat controller c_home.php, simpan kedalam folder ci/application/controller, isi controller :
11. Buat view v_form.php simpan didalam folder ci/application/views/login (folder login create sendiri), isi view :
12. Buat form v_home.php satu folder dengan v_form.php , v_home.php digunakan untuk redirect apabila login berhasil maka akan dilarikan kedalam halaman tersebut, isi view v_form :
13. Apabila sudah jalankan localhost/ci didalam browser, maka akan keluar form login seperti ini :
4. Apabila ketiga langkah diatas sudah dijalankan, edit config.php yang ada didalam folder ci/application/config/config.php menjadi :
5. Edit konfigurasi autoload.php yang ada didalam satu folder dengan config.php sebelumnya,
6. Edit konfigurasi database.php yang ada didalam satu folder dengan config.php sebelumnya,
7. Edit konfigurasi routes.php yang ada didalam satu folder dengan config.php sebelumnya,
8. Buat model, dengan nama m_user.php simpan kedalam folder ci/application/model isi model :
9. Buat controller c_login untuk mengatur model tersebut simpan kedalam folder ci/application/controller , isi controller :
10. Buat controller c_home.php, simpan kedalam folder ci/application/controller, isi controller :
11. Buat view v_form.php simpan didalam folder ci/application/views/login (folder login create sendiri), isi view :
12. Buat form v_home.php satu folder dengan v_form.php , v_home.php digunakan untuk redirect apabila login berhasil maka akan dilarikan kedalam halaman tersebut, isi view v_form :
13. Apabila sudah jalankan localhost/ci didalam browser, maka akan keluar form login seperti ini :
isikan username : cahyo | password : cahyo
14. Apabila isian username dan password benar, maka akan redirect ke halaman admin seperti gambar dibawah ini :
Bagaimana, mudah bukan. apabila ingin menggunakan autentikasi tank_auth bisa lihat disini
kalau mau pasang rechapcha dari google gimana ya mas? karena chapcha yang biasa bisa di baca oleh software chapcha
ReplyDelete@nanda : kalau masang captcha dari google bisa juga, dengan syarat webnya konek dengan internet, bukan di lokal,
ReplyDeleteuntuk caranya, bisa dilihat disini http://codeigniter.com/wiki/ReCAPTCHA
mohon maaf kk, kmaren saya coba, ternyata ada yg error...
ReplyDeleteyaitu di variable data ( class C_login extends CI_Controller ) dan juga code $this->load->view('login/v_home'); nya... setelah dicoba menghpus variable data tersebut dan mengubah login/v_home denagn v_home akhirnya berhasil :D thanks sebelumnya kk.....
ditunggu tutorial selanjutnya 8-7
numpang promosi kk hehehe maaf websitenya belum jadi http://www.anak-kalteng.pusku.com
errornya disitu ? tergantung @riduan naruh v_home.php nya, apabila didalam folder login, berarti harus ada 'login/v_home'
Deletetapi kalo diluar folder login, langsung v_home saja.
oh iya variable data tersebut emang gak ada, kmren aku copas dari form yang make captcha.
ok terimakasih dah diteliti, ;)
PROBLEM SOLVED (Dah ane benahin)
om saya udah ikutin langkah2 diatas, tapi kenapa outputnya :
ReplyDelete=======================================================
A Database Error Occurred
Unable to connect to your database server using the provided settings.
Filename: C:\xampp\htdocs\CI\system\database\DB_driver.php
Line Number: 124
========================================================
apa yang salah ya kira2??
kalo dari pesan kesalahan, database ente gk bisa konek tu om..
Deletecoba cek lagi apakah nama database ente ci, cara ngeceknya liat di config.php
semangat om.... pasti bisa, :)
bang kalo pake library sessionnya CI gimana? terus kalo pake sessionnya CI menampilkan $_SESSION['username']; gimana? thx
ReplyDeletedicontroller c_login, tinggal load aja sesssion librarynya
Delete$this->load->library('session');
kemudian definsikan session.
example :
$datasession = array('cahyo');
$this->session->set_userdata($datasession);
$this->session->set_flashdata('session', $datasession);
kemudian didalam viewnya kita tampilkan dengan
echo $this->session->flashdata('session');
page notfound om..gimana?pas login
ReplyDeletenot found gimana ya om...
Deletemungkin bisa kasih tahu pesan errornya gimana.
ato mungkin belum buat file viewnya om...
check lagi,
maaf baru bisa bales, cz blog lama ane tinggal ngerjain skripsi :)
kalaw pesan Error gini gmna mas..sblum nya saya bikin temlet trus muncul..trus sya mau bkin form login
ReplyDeleteA Database Error Occurred
Unable to select the specified database: db_kep_raya
Filename: C:\xampp\htdocs\Desa_KepRaya\system\database\DB_driver.php
Line Number: 140
terimkasi klw berkenan menjwab nya
di confignya udah didefinisikan nama database seperti database yang dibuat, yaitu db_kep_raya ?
Deletebang kalo pas diklik button login g mau masuk ke home, username n pass udah bener kira2 salah dmnnya yah...
ReplyDeletetrimakasih
autentikasi sudah yakin bener ?
Deletekalau sudah, check lagi di
if ( $result == TRUE) {
$_SESSION['username'] = $this->input->post('username');
redirect('c_home');
}
terutama di redirectnya coba kasih echo $_SESSION['username']; exit(); sesudah session username, untuk menampilkan sebuah data session, apabila autentikasi benar, maka data session akan tampil. kalau autentikasi salah berarti gk tampil. apabila bisa tampil gk bisa redirect ke viewnya check lagi controller c_homenya apakah sudah benar :)
saya mau tanya ,saya kan udah buat login dan semuanya udah berjalan dengan sukses ,
ReplyDeleteketika saya mau edit apapun di menu utamanya ,seharusnya hanya nampil dimenu utamanya aja kan ,tapi kasus saya
ini setiap saya ngedit di menu utama,kenapa muncul di form loginnya juga ..
tolong di bantu ya ,makasih :)
bisa liat scriptnya ?
Deletemungkin di link editnya masih keliru, coba check lagi link editnya. :)
mau tanya gan, kalo loginnya dari tiga tabel, misalnya tabel guru, tabel siswa, tabel operator, itu gimana ya gan?
ReplyDeletebisa saja, dipengecekan user saat login check ketiga tabel tersebut, apakah user ada didalam salah satu tabel tersebut, tapi ingat, dikasih username atau pass unique, untuk membedakan, atau bisa dikasih dropdown pilihan login sebagai apa, guru, siswa atau operator untuk membedakan posisi login user tersebut, apabila ada user disalah satu tabel tersebut maka redirect halaman home sesuai hak akses yang diberikan, :)
Deletemakasih gan sangat membantu :D saya jadi ringan tugasnya
ReplyDelete