Artikel kali ini akan membahas tentang cara menggunakan session di Codeigniter serta cara membuat multi language di Codeigniter dengan session. Sesuai dengan data yang ada, terdapat beberapa tutorial mengenai penggunaan session di Codeigniter.
Cara Membuat Session Codeigniter
Session merupakan salah satu fitur penting dalam pengembangan aplikasi web. Fitur ini memungkinkan sebuah aplikasi web untuk menyimpan data sementara pada server. Dalam Codeigniter, session dapat digunakan untuk membuat halaman login, pengaturan bahasa, dan lain-lain.
Untuk membuat session di Codeigniter, langkah pertama yang harus dilakukan adalah membuat konfigurasi session pada file config.php. Secara default, kode konfigurasi session di Codeigniter seperti berikut:
<?php $config['sess_driver'] = 'files'; $config['sess_cookie_name'] = 'ci_session'; $config['sess_expiration'] = 7200; $config['sess_save_path'] = NULL; $config['sess_match_ip'] = FALSE; $config['sess_time_to_update'] = 300; $config['sess_regenerate_destroy'] = FALSE;
Pertama, kita perlu mengatur sess_driver
, karena secara default menggunakan files
yang artinya session disimpan di dalam direktori application/cache/
. Namun, Anda juga bisa menggunakan database
sebagai penyimpan session, untuk itu Anda harus membuat tabel pada database dan memodifikasi konfigurasi seperti berikut:
<?php $config['sess_driver'] = 'database'; $config['sess_cookie_name'] = 'ci_session'; $config['sess_expiration'] = 7200; $config['sess_save_path'] = 'sessions'; $config['sess_match_ip'] = FALSE; $config['sess_time_to_update'] = 300; $config['sess_regenerate_destroy'] = FALSE;
Setelah konfigurasi session telah diatur, tinggal panggil session pada controller atau model. Dalam hal ini, kita menggunakan session pada controller:
<?php class Example extends CI_Controller public function index() $this->load->library('session'); $this->session->set_userdata('username', 'John'); echo $this->session->userdata('username');
Pada script diatas, kita memanggil library session dengan memuat library('session')
, lalu kita menyimpan data session dengan set_userdata
, dan untuk memanggil data session kita menggunakan userdata
. Hasil keluaran dari script tersebut adalah “John”.
Cara Menggunakan Session di Codeigniter 3
Tidak hanya itu, terdapat cara lain dalam penggunaan session di Codeigniter 3. Berikut adalah tutorial cara menggunakan session di Codeigniter 3.
Pertama, buatlah suatu controller dan load library session.
<?php class Example extends CI_Controller function __construct() parent::__construct(); $this->load->library('session');
Setelah itu, Anda bisa menyimpan data session seperti berikut:
<?php $this->session->set_userdata('user', $user);
Dalam script tersebut merupakan contoh penyimpanan data session, dimana ‘user’ adalah key dari session dan $user adalah value dari session. Kemudian untuk memanggil data session dapat menggunakan kode berikut:
<?php echo $this->session->userdata('user');
Kode diatas digunakan untuk mengecek apakah data session ‘user’ memiliki value.
Cara Membuat Multi Language di Codeigniter Dengan Session
Selain itu, kita juga bisa membuat multi language di Codeigniter dengan session. Dalam pengembangan aplikasi web, pengaturan bahasa sangat mempengaruhi kemudahan pengguna dalam mengoperasikan aplikasi. Dengan menggunakan multi language, pengguna dapat memilih bahasa yang sesuai dengan kebutuhannya.
Untuk membuat multi language di Codeigniter dengan session, langkah pertama yang harus dilakukan adalah membuat folder language pada direktori application. Selanjutnya, pada direktori application/language, buatlah suatu folder dengan nama sesuai dengan iso code suatu bahasa, contohnya folder english
untuk bahasa Inggris.
Setelah mempersiapkan folder language, langkah selanjutnya adalah membuat file bahasa. File bahasa untuk Codeigniter memiliki format language_code.php
, misalnya untuk bahasa Inggris dengan kode en
, file bahasa harus bernama en.php
. Pada file bahasa, buat nama array untuk setiap elemen yang akan diterjemahkan dalam bahasa tersebut.
<?php $lang['welcome_message'] = 'Welcome to my website!'; $lang['about_message'] = 'This website is about programming.'; $lang['contact_message'] = 'For more information, please contact us.';
Setelah membuat file bahasa, tinggal panggil file bahasa pada controller:
<?php class Example extends CI_Controller function __construct() parent::__construct(); $this->load->helper('language'); function index() $this->load->view('welcome_message'); function changeLanguage($language) $this->session->set_userdata('language', $language); redirect($_SERVER['HTTP_REFERER']);
Pada script di atas, pertama kita memanggil helper language, lalu dalam function index, kita memuat view untuk menampilkan pesan pada bahasa yang dipilih. Sedangkan pada function changeLanguage, kita menyimpan data session untuk memilih bahasa yang diinginkan, lalu untuk meredirect ke halaman sebelumnya kita menggunakan kode $_SERVER['HTTP_REFERER']
.
FAQ
Bagaimana cara menggunakan session untuk membuat halaman login di Codeigniter?
Untuk membuat halaman login di Codeigniter, Anda dapat menyimpan session yang berisi informasi username dan password. Kemudian, buatlah suatu function yang memvalidasi data username dan password kemudian menambahkan informasi session. Jika data telah sesuai, pengguna akan diarahkan ke halaman utama, jika tidak maka akan muncul pesan error.
Apakah session akan terhapus saat browser ditutup?
Tidak. Secara default, session akan disimpan dalam direktori application/cache/
dan akan terus tersimpan meskipun browser ditutup. Namun, Anda dapat mengatur waktu kadaluwarsa session pada konfigurasi seperti yang telah dijelaskan sebelumnya.
Video Tutorial
Berikut adalah video tutorial tentang cara membuat session di Codeigniter: