Membuat Sistem Login Multi User Dengan Penggunaan Sessions Dalam PHP
Pada kesempatan kali ini saya akan mencoba kembali menulis tutorial mengenai PHP, dan kali ini yang akan kita bahas adalah bagaimana caranya membuat sistem login multi user dalam penggunaan SESSIONS yang tersimpan.
Mungkin masih ada yang bertanya, Apa itu Sessions...?Pengertian menurut saya mengenai Sessions adalah informasi Website yang tersimpan di Server yang terkait dengan Browser yang kita gunakan, dan sessions ini banyak di gunakan dalam proses Login dan Logout pada Applikasi Website.
Mari kita buat sebuah database nya terlebih dahulu, misalkan bernama login_user
Setelah database baru bernama login_user di buat, kemudian buatlah sebuah table pada database tersebut, misalkan bernama tab_user dan nama-nama kolom nya adalah user_id, username, password,user_nama, dan user_akses.
Silahkan gunakan phpMyAdmin untuk membuat nya, dan jangan lupa untuk kolom user_id gunakan sebagai INDEXS database dengan jenis PRIMARY, dan jenis kolom nya dibuat INT dengan penerapanAUTO_INCREMENT supaya nomor urut nya otomatis pada saat menambahkan user baru.
Untuk membedakan hak akses user...!
Pada kolom user_akses dibuat dengan type ENUM dengan isian nilainya misalkan"gratis","premium","admin" hal ini dimaksudkan untuk membedakan hak akses user tersebut saat login ke website, dan nantinya akan kita simpan pada sessions.
Jika masih bingung dengan pembuatan table database di atas, silahkan copy kan struktur table database di bawah ini, kemudian paste pada database bernama login_user yang telah anda buat pada phpMyAdmin.
Kemudian setelah selesai membuat struktur database dan kolom-kolom nya, insert kan beberapa contoh user pada database tersebut, misalkan seperti contoh di bawah ini:
Jika masih bingung untuk membuat contoh user nya, silahkan masukan 4 data user di bawah ini kepada struktur tabel tab_user yang telah di buat:
Sekarang kita saat nya membuat script php untuk table 'tab_user' yang telah di buat pada database tersebut, dimulai dari pertama user login menggunakan form login, dan proses penyimpanan sessions apabila user tersebut memiliki akses dan sudah ada pada database tersebut.
Untuk pembuatan applikasi nya, pertama-tama buatlah sebuah script PHP sebagai koneksi ke MYSQLterlebih dahulu, yang nantinya akan kita include kan ke script php untuk pemrosesan login user, kurang lebih seperti ini :
koneksi.php
Kemudian buat lah sebuah formulir untuk login user nya, misalkan pada form.php
Script form PHP di atas di include kan pada file index.php.
Apabila seorang user akan login dengan mengisi form pada form.php di atas, maka akan di proses oleh script proses.php seperti ini :
proses.php
Proses di atas, jika user terdapat pada database, maka akan menyimpan 4 sessions yaitu user_id,username, password, dan user_akses. kemudian mengarah kanya kepada script index.php dan jika user tidak ada pada database, maka akan menghasil kan string LOGIN GAGAL!
Coba anda perhatikan SESSIONS yang di register pada script di atas, bahwa kolom user_nama tidak di register kan pada sessions, padahal kolom user_nama di buat pada database di atas...! Sengaja saya buat demikian, karena untuk pembuatan applikasi website tentunya memerlukan detail user yang lebih lengkap, seperti alamat user, email user, nomor hp dan sebagai nya, dan jika kita register kan semua pada sessions, maka proses exsekusi script akan menjadi tambah berat untuk loading data nya.
Untuk menghindari kekurangan di atas, maka di gunakan query_mysql untuk memproses pengambilan data-data yang lain pada database, seperti user_nama, dan data-data user lainya apabila ada dan di perlukan untuk applikasi tersebut, lihat pada script index.php.
index.php
Untuk menghapus SESSIONS yang tersimpan gunakan fungsi perintah session_destroy() Lihat pada script logout.php di bawah ini:
logout.php
Sumber : http://www.tutorialwebgratis.com
Mungkin masih ada yang bertanya, Apa itu Sessions...?Pengertian menurut saya mengenai Sessions adalah informasi Website yang tersimpan di Server yang terkait dengan Browser yang kita gunakan, dan sessions ini banyak di gunakan dalam proses Login dan Logout pada Applikasi Website.
Lalu informasi seperti apakah yang tersimpan itu...?
Tergantung dari si pembuat applikasi tersebut, informasi seperti apakah yang ingin di simpan nya, dan biasanya ini di gunakan untuk menyimpan informasi username, kata sandi dan informasi-informasi lain yang di perlukanya untuk mengakses website tersebut.Langsung menuju praktek nya...!
Dalam contoh ini saya akan membuat sebuah applikasi website yang memiliki 3 golongan user dengan hak akses yang berbeda untuk login ke website tersebut, dan satu di antaranya memiliki akses sebagai Admin website.Mari kita buat sebuah database nya terlebih dahulu, misalkan bernama login_user
Silahkan gunakan phpMyAdmin untuk membuat nya, dan jangan lupa untuk kolom user_id gunakan sebagai INDEXS database dengan jenis PRIMARY, dan jenis kolom nya dibuat INT dengan penerapanAUTO_INCREMENT supaya nomor urut nya otomatis pada saat menambahkan user baru.
Untuk membedakan hak akses user...!
Pada kolom user_akses dibuat dengan type ENUM dengan isian nilainya misalkan"gratis","premium","admin" hal ini dimaksudkan untuk membedakan hak akses user tersebut saat login ke website, dan nantinya akan kita simpan pada sessions.
Jika masih bingung dengan pembuatan table database di atas, silahkan copy kan struktur table database di bawah ini, kemudian paste pada database bernama login_user yang telah anda buat pada phpMyAdmin.
Untuk phpMyAdmin dengan InnoDB:
Untuk phpMyAdmin Dengan MyISAM:
user_id | username | password | user_nama | user_akses |
1 | andi | 1234 | Andi Doang | gratis |
2 | toto | 1234 | Toto Kuncoro | premium |
3 | calim | 1234 | Calim Weh | admin |
4 | widia | 1234 | Widia Yatin | gratis |
Jika masih bingung untuk membuat contoh user nya, silahkan masukan 4 data user di bawah ini kepada struktur tabel tab_user yang telah di buat:
Sekarang kita saat nya membuat script php untuk table 'tab_user' yang telah di buat pada database tersebut, dimulai dari pertama user login menggunakan form login, dan proses penyimpanan sessions apabila user tersebut memiliki akses dan sudah ada pada database tersebut.
Untuk pembuatan applikasi nya, pertama-tama buatlah sebuah script PHP sebagai koneksi ke MYSQLterlebih dahulu, yang nantinya akan kita include kan ke script php untuk pemrosesan login user, kurang lebih seperti ini :
koneksi.php
Kemudian buat lah sebuah formulir untuk login user nya, misalkan pada form.php
Script form PHP di atas di include kan pada file index.php.
Apabila seorang user akan login dengan mengisi form pada form.php di atas, maka akan di proses oleh script proses.php seperti ini :
proses.php
Proses di atas, jika user terdapat pada database, maka akan menyimpan 4 sessions yaitu user_id,username, password, dan user_akses. kemudian mengarah kanya kepada script index.php dan jika user tidak ada pada database, maka akan menghasil kan string LOGIN GAGAL!
Coba anda perhatikan SESSIONS yang di register pada script di atas, bahwa kolom user_nama tidak di register kan pada sessions, padahal kolom user_nama di buat pada database di atas...! Sengaja saya buat demikian, karena untuk pembuatan applikasi website tentunya memerlukan detail user yang lebih lengkap, seperti alamat user, email user, nomor hp dan sebagai nya, dan jika kita register kan semua pada sessions, maka proses exsekusi script akan menjadi tambah berat untuk loading data nya.
Untuk menghindari kekurangan di atas, maka di gunakan query_mysql untuk memproses pengambilan data-data yang lain pada database, seperti user_nama, dan data-data user lainya apabila ada dan di perlukan untuk applikasi tersebut, lihat pada script index.php.
index.php
Untuk menghapus SESSIONS yang tersimpan gunakan fungsi perintah session_destroy() Lihat pada script logout.php di bawah ini:
logout.php
Sumber : http://www.tutorialwebgratis.com
Komentar
Posting Komentar
Tulis komentar anda disini.....