Session adalah sebuah varibel sementara yang diletakkan di server. Di mana PHP bisa mengambil nilai yang tersimpan di server walaupun kita membuka halaman baru. Biasanya session akan hilang jika anda menutup browser. Show Fungsi session adalah untuk melakukan aktivitas yang berhubungan dengan interaksi user pada sebuah web server php. Untuk kali ini saya akan jelaskan penggunaan session untuk login dan logout. Penjelasanya yang perlu diketahui adalah penggunaan $_SESSION[] harus di daftarkan terlebih dahulu. Tanpa session didaftarkan, maka variabel session tidak dapat digunakan alias kosong. Berikut ini bagian session yang perlu Anda ketahui penggunaannya.
Kegunaan dari fungsi session_start(); adalah untuk memulai eksekusi session pada server dan kemudian menyimpannya pada browser. Dengan intruksi ini menunjukkan pada saat session di mulai, semua session akan diaftarkan selanjutnya akan disimpan. Penyimpanan ini terjadi sampai jangka waktu tertentu. Dan untuk membaut session berdasarkan waktu bisa Anda setting sendiri. Mudah-mudahan nanti saya buat tutorialnya dengan batas waktu session. Selain dengan batas waktu, session bisa hilang jika cookies browser Anda hilangkan. Dengan dihilangkan, maka secara otomatis session juga hilang dari browser Anda.
Jika pada no adalah mendaftarkan sebuah session. Berbeda dengan yang ketiga ini. Varibel ini adalah sebuah inisialisasi dari session.
Pada bagian ini menjelesakan bahwa semua session yang telah di buat dan di inisialisasi akan di destroy atau di hancurkan. Nah pada tahanpan inilah yang sering digunakan untuk script logout pada web atau aplikasi berbasis web lainya. Cara membuat session adalah sebagai berikut :
Sebagai contoh, buat suatu halaman php dengan nama “index1.php” lalu ketik atau copy script php dibawah ini kedalamnya. Catatan:
Setelah kita me-registerkan variabel $_SESSION seperti yang kita lakukan pada “index1.php” tadi, maka untuk mengecek apakah session telah diregister adalah dengan menggunakan fungsi isset(). Pada contoh di atas (index1.php), setelah kita me-register $_SESSION[‘username’], kita akan ke halaman2.php Di index2.php kita akan cek apakah variabel session telah di register, jika belum kita stop membuka isi index2.php Sekarang mari kita buat halaman php dengan nama “index2.php” lalu tempatkan script php dibawah ini kedalamnya : Untuk melihat efeknya antara variabel $_SESSION sudah diregister atau belum, coba anda tutup browser, lalu buka lagi browsernya, langsung buka halaman index2.php. Tanpa membuka index1.php terlebih dahulu, lalu lihat hasilnya, jika sudah sekarang coba anda jalankan “index1.php” dan kemudian jalankan “index2.php” , maka lihat hasilnya dan perbedaannya. Setelah kita belajar me-register session, maka cara un-register session adalah dengan menggunakan fungsi unset() , script ini sama halnya dengan membuat logout pada halaman website, namun ini masih contoh kecil dan masih bisa anda kembangkan sesuai dengan kebutuhan anda. Dan untuk membuatnya mari kita buat lagi halaman php dengan nama “logout.php” lalu copy kan script dibawah ini kedalamnya: Jika sudah, maka coba jalankan halaman yang anda buat tadi secara berurutan, pertama coba anda jalankan “index1.php” , jika sudah lalu jalankan “index2.php” dan lihat tulisan yang mucul pada halamn browser anda, jika anda sudah melihatnya lalu jalankan halaman “logout.php” dan jika semuanya sudah selesai anda jalankan sesuai urutan yang saya katakan, maka refresh atau reload “index2.php” tadi dan lihat perbedaannya.’ Dalam PHP, session merupakan data yang disimpan dalam suatu server yang dapat digunakan secara global di server tersebut, dimana data tersebut spesifik merujuk ke user/client tertentu, contoh penggunaan session adalah ketika user telah login di halaman tertentu, maka ketika membuka halaman lain, php akan mengingat bahwa user tersebut telah login, contoh ketika kita telah login pada Google, maka setiap kali kita membuka layanan Google seperti GMail, Google Drive, dll di tab berbeda, kita akan selalu dalam keadaan login, kecuali kita buka dengan browser yang berbeda. Cntoh lain ketika web ecommerce merekam keranjang belanja user, maka ketika pindah ke halaman pembayaran, daftar belanja masih terekam. I. Cara Kerja Session Pada PHP Ketika kita memulai session dengan menjalankan perintah Sisi Server Dari sisi server php akan membuat file yang kita sebut file session yang diawali dengan
Terus dimana php menyimpan file session tersebut? file tersebut secara default disimpan didalam direktori temporary dimana letak direktory ini tergantung dari masing-masing sistem opersi yang digunakan. untuk mengetahui dimana php menyimpan file session, dapat menggunakan perintah: 2Misal kita buat file session.php dan simpan ke dalam htdocs/tutorial, selanjutnya tuliskan kode berikut:
Ketika kita jalankan file tersebut di komputer yang menggunakan sistem operasi windows, contoh output yang dihasilkan adalah 3omputer saya), jika kita buka direktori tersebut, disana kita temukan banyak file .tmp, cari nama dengan awalan sess_ , file tersebut merupakan file session.Gambar 1. Contoh File Session Sisi User/Client Selanjutnya dari sisi client/user, php akan:
Isi File Session Pada PHP
ketika kita jalankan PHP akan menyimpan data session dengan key dan value sesuai dengan yang kita tentukan, jika kita buka file session tadi menggunakan notepad, maka akan berisi 7format: nama key diikuti tanda | kemudian data yang di serialize (tipe data : panjang data(jika ada) : nilai data) dengan tanda pemisah antara data satu dengan yang lain menggunakan  titik koma. contoh diatas berarti bahwa s merupakan tipe data string, 6 panjang data, sedangkan b berarti tipe data boelan.Session selesai Ketika browser ditutup atau kita menjalankan perintah session_destroy() maka session berakhir, jika kita menggunakan 8 maka file session yang ada pada server akan lansung terhapus, namun jika browser ditutup, file tersebut tidak langsung dihapus, server akan menghapusnya pada periode tertentu, biasanya 30 menit. Ketika browser ditutup, cookie session pada browser akan langsung terhapus, sehingga session tersebut tidak dapat digunakan lagi kecuali jika kita mengetahui ID Session nya, maka data session tersebut dapat digunakan kembali baik melalui url maupun cookie.II. Mengawali/Menjalankan Session Pada PHP Untuk mengawali menjalankan session, seperti pada tulisan diatas, kita gunakan perintah
Karena penggunaan data session harus didahului dengan perintah III. Menambahkan Data Session Pada PHP Semua data session disimpan dalam bentuk array superglobal dengan nama $_SESSION, sehingga seperti array pada umumnya setiap variabel session disimpan dalam hubungan key dan value, untuk menambahkan data kedalamnya sama dengan ketika kita menambahkan data di array biasa, namun bedanya variabel $_SESSION akan tetap dapat kita gunakan di file php manapun (dalam satu server) hingga kita menakhirinya dengan perintah 8Contoh untuk menambahkan data session:
IV. Membaca Data Session Pada PHP Setelah kita menyimpan data pada session, data tersebut langsung dapat kita gunakan, untuk memanggil  data session pada PHP, seperti kita memanggil data pada array pada umumnya, yaitu dengan key nya, contoh:
Session yang telah kita isi datanya dapat langsung kita gunakan sehingga lebih banyak keuntungannya dibanding menggunakan $_COOKIE. V. Menghapus Data Session Pada PHP Untuk menghapus data session pada php, sama seperti ketika kita menghapus variabel, yaitu menggunakan perintah 6contoh berikut menyambung contoh sebelumnya:
disamping itu kit juga dapat menggunakan perintah 7 untuk menghapus semua data pada $_SESSION, contoh:
perlu diperhatikan bahwa jika menggunakan perintah 6 untuk menghapus data session, pilihlah data secara spesifik, jangan menghapus $_SESSION itu sendiri ( 9), karena akan menghapus semua isi data session, dan menghapus variabel $_SESSION itu sendiri, sehingga jika kita panggil akan memunculkan pesan error bahwa variabel $_SESSION undefined. contoh:
VI. Mengakhiri Session Pada PHP Untuk mengakhiri session pada PHP, kita gunakan perintah 8, dengan perintah ini maka file session akan dihapus dari server. contohnya ketika user logout, maka session akan berakhir dan user diminta untuk login kembali.VII. Keamanan Session Pada PHP Dari berbagai manfaat session terdapat beberapa kelemahan yang bisa menyebabkan kerugian terutama pada user, yaitu bocornya data-data sensitif ke pihak yang tidak bertanggung jawab.  Untuk membahas mengenai keamanan session dan bagaimana mencegahnya, dapat dibaca pada artike berikutnya. Demikian pembahasan kita mengenai session pada PHP, semoga bermanfaat. Subscibe NowSuka dengan artikel di Jagowebdev.com? jangan sampai ketinggalan, segera join ke milis kami untuk update informasi terbaru dari Jagowebdev.com Komitmen Kami: Kami senantiasa menghargai privasi Anda dan tidak akan membagikan identitas Anda ke pihak manapun. Bagaimana cara kerja session pada PHP?Cara kerja Session:
Saat pengunjung mengakses suatu halaman, pengunjung tersebut memulai session (digunakan fungsi session_start()). Bila dalam konfigurasi php, session.auto_start diset ke 1 maka php akan melakukan start session secara otomatis.
Apa perbedaan antara session dan cookie?Perbedaan antara session dan cookie yaitu, session menyimpan data pada sisi server sedangkan cookie menyimpan data pada sisi client dan karena itulah session lebih aman dalam menyimpanan data maupun file dibanding cookie karena penyimpanan dilakukan di sisi server.
Apa fungsi $_ session pada PHP?Fungsi session adalah untuk melakukan aktivitas yang berhubungan dengan interaksi user pada sebuah web server php.
Dimana session PHP disimpan?Berbeda dengan cookies yang disimpan di browser, session disimpan di dalam web server.
|