• About
  • Contact
  • My Twitter
  • My Facebook

Learning To Earning

Belajar Untuk Mendapatkan...

  • HOME
  • ALGORITMA
  • PHP
  • JAVA
  • CCNA 4
  • Hardware
  • NGE-BLOG
Home » PHP » PHP Dasar – Session

PHP Dasar – Session

Add Comment
PHP

Session digunakan untuk mengirim data ke beberapa halaman web. Sebuah halaman web, secara normal tidak akan mengirim suatu data dari halaman yang satu ke halaman yang lain. Dengan kata lain, semua informasi tentang data tersebut akan hilang begitu halaman web direload.
Berikut ini akan diberikan contoh tentang penjelasan di atas, mengenai perlunya menggunakan session:
Diberikan source code sbb:
Form.php
<form action=submit.php method=post>
Username
<input type=text name=username><input type=submit name=submit value=Submit>
</form>

Submit.php
<?
$username = $_POST[‘username’];
echo “Nama user Anda adalah: $username<br><br>”;
echo “<a href=hal1.php>Hal 1</a> <a href=hal2.php>Hal 2</a>
<a href=hal3.php>Hal 3</a>”;
?>

Hal1.php
<?
echo "Ini adalah halaman 1<br>";
echo "Nama user Anda adalah: $username<br><br>";
echo "<a href=hal1.php>Hal 1</a> <a href=hal2.php>Hal 2</a>
 <a href=hal3.php>Hal 3</a>";
?>

Hal2.php
<?
echo "Ini adalah halaman 2<br>";
echo "Nama user Anda adalah: $username<br><br>";
echo "<a href=hal1.php>Hal 1</a> <a href=hal2.php>Hal 2</a>
<a href=hal3.php>Hal 3</a>";
?>

Hal3.php
<?
echo "Ini adalah halaman 3<br>";
echo "Nama user Anda adalah: $username<br><br>";
echo "<a href=hal1.php>Hal 1</a> <a href=hal2.php>Hal 2</a>
<a href=hal3.php>Hal 3</a>";
?>

Dengan file-file di atas, user diminta melakukan login terlebih dahulu (memasukkan nama user) melalui form.php. Selanjutnya akan muncul submit.php yang menampilkan nama user yang dimasukkan tadi dan beberapa link ke halaman lain. Begitu user mengakses 3 buah halaman web yang ada tersebut, diharapkan nama user yang telah dimasukkan dalam form sebelumnya tetap ditampilkan dalam setiap halaman web yang diakses. Akan tetapi apa yang terjadi? Ternyata untuk ketiga halaman web yang diakses tersebut tidak menampilkan nama user. Hal ini dikarenakan hilangnya data/informasi dari nama user yang dimasukkan sebelumnya.
Nah… di sinilah perlunya session. Dengan session, data dapat disimpan dan selanjutnya dapat diakses di beberapa halaman web.
Penggunaan session sering diterapkan pada aplikasi web yang bersifat multiuser, seperti online
shopping, web based mail, e-banking, dll.
Data yang yang tersimpan dalam session bersifat temporary/ sementara. Biasanya akan terhapus secara otomatis begitu user menutup browser, atau melakukan logout.

Memulai PHP – Session
Sebelum Anda menyimpan data dalam session, terlebih dahulu harus memulai session. Untuk memulai session, perintahnya adalah:
session_start()

Menyimpan Data ke dalam Session
Untuk menyimpan data ke dalam session, digunakan perintah:
$_SESSION['nama_session'] = data;

Berikut ini adalah code dalam file submit.php (contoh sebelumnya) yang telah dimodifikasi: Nama user akan disimpan dalam session.
<?
session_start();
$username = $_POST['username'];
$_SESSION['namauser'] = $username;
echo "Nama user Anda adalah: $username<br><br>";
echo "<a href=hal1.php>Hal 1</a> <a href=hal2.php>Hal 2</a>
<a href=hal3.php>Hal 3</a>";
?>

Memanggil Data yang Tersimpan dalam Session
Setelah data disimpan dalam session, selanjutnya dapat dipanggil kembali apabila diperlukan. Untuk memanggil data dalam session, caranya cukup menuliskan $_SESSION['nama_session'].
Berikut ini adalah code dari file hal1.php, hal2.php, dan hal3.php sehingga dapat menampilkan
nama user yang telah disimpan dalam session:
Hal1.php
<?
session_start();
echo "Ini adalah halaman 1<br>";
echo "Nama user Anda adalah: ".$_SESSION['namauser']. "<br><br>";
echo "<a href=hal1.php>Hal 1</a> <a href=hal2.php>Hal 2</a>
<a href=hal3.php>Hal 3</a>";
?>

Hal2.php
<?
session_start();
echo "Ini adalah halaman 1<br>";
echo "Nama user Anda adalah: ".$_SESSION['namauser']. "<br><br>";
echo "<a href=hal1.php>Hal 1</a> <a href=hal2.php>Hal 2</a>
<a href=hal3.php>Hal 3</a>";
?>

Hal3.php
<?
session_start();
echo "Ini adalah halaman 1<br>";
echo "Nama user Anda adalah: ".$_SESSION['namauser']. "<br><br>";
echo "<a href=hal1.php>Hal 1</a> <a href=hal2.php>Hal 2</a>
<a href=hal3.php>Hal 3</a>";
?>

Menghapus Data Session
Untuk menghapus data yang tersimpan dalam suatu session, digunakan perintah unset($_SESSION['nama_session']); Misalkan terdapat lebih dari satu session dan kita ingin menghapus semuanya, maka caranya dengan memberikan perintah session_destroy();
Biasanya menghapus data session yang terkait dengan username diterapkan pada proses logout. Dengan proses logout, maka username yang telah tersimpan dalam session akan terhapus.
Akan dibuat script untuk proses logout dari kasus di atas:
<?
session_start();
unset($_SESSION['namauser']);
?>

Penerapan Session untuk Security
Pada contoh kasus di atas, misalkan kita buat aturan bahwa untuk dapat mengakses halaman 1,
2, dan 3, user harus terlebih dahulu melakukan login. Dari script yang kita buat di atas, seorang
user bisa saja langsung melakuan by pass ke tiga halaman tersebut tanpa login terlebih dahulu.
Tentu saja hal ini bisa berbahaya untuk aplikasi multiuser yang harus menjamin keamanan data
dari para usernya.
Untuk mencegah proses by pass tersebut, dapat kita akali dengan menggunakan session. Logikanya adalah, apabila user melakukan login, maka nama user yang dia masukkan akan disimpan dalam session. Sedangkan apabila ada seorang user yang mencoba mem by pass, maka dengan kata lain username tidak akan disimpan dalam session (session untuk user masih kosong), dengan catatan bahwa user lain yang sebelumnya login harus sudah me-logout. Dari hal ini, kita dapat melakukan cek apakah seorang user sudah melakukan login atau belum dengan melihat session, masih kosong atau tidak. Untuk melihat sebuah session masih kosong atau tidak dengan menggunakan perintah:
isset($_SESSION['nama_session'])
Perintah di atas akan menghasilkan nilai TRUE apabila session sudah tidak kosong, dan akan menghasilkan nilai FALSE apabila session masih kosong.
Kita akan membuat script untuk mencegah by pass dalam kasus sebelumnya. Script ini selanjutnya akan disisipkan pada setiap halaman yang diinginkan, dalam hal ini adalah halaman
1, 2, dan 3, contoh:
Cek.php
<?
session_start();
if (!isset($_SESSION['namauser']))
{
echo "Anda belum login";
exit;
}
?>

Dan berikut adalah script hal1.php, hal2.php, dan hal3.php yang sudah dimodifikasi:
Hal1.php
<?
session_start();
include "cek.php";
echo "Ini adalah halaman 3<br>";
echo "Nama user Anda adalah: ".$_SESSION['namauser']. "<br><br>";
echo "<a href=hal1.php>Hal 1</a> <a href=hal2.php>Hal 2</a>
<a href=hal3.php>Hal 3</a>";
?>

Hal2.php
<?
session_start();
include "cek.php";
echo "Ini adalah halaman 3<br>";
echo "Nama user Anda adalah: ".$_SESSION['namauser']. "<br><br>";
echo "<a href=hal1.php>Hal 1</a> <a href=hal2.php>Hal 2</a>
<a href=hal3.php>Hal 3</a>";
?>

Hal3.php
<?
session_start();
include "cek.php";
echo "Ini adalah halaman 3<br>";
echo "Nama user Anda adalah: ".$_SESSION['namauser']. "<br><br>";
echo "<a href=hal1.php>Hal 1</a> <a href=hal2.php>Hal 2</a>
<a href=hal3.php>Hal 3</a>";


?>
Tweet
PHP Dasar – Session Title : PHP Dasar – Session
Description : Session digunakan untuk mengirim data ke beberapa halaman web. Sebuah halaman web, secara normal tidak akan mengirim suatu data dari ...
Rating : 5

0 Response to "PHP Dasar – Session"

Anda sopan, saya segan.

← Newer Post Older Post → Home
Subscribe to: Post Comments (Atom)

Popular Posts

  • PHP Dasar – Operasi File
    Bagaimana menggunakan perintah PHP untuk melakukan operasi file mulai dari proses membuka dan menutup file. Setelah itu dilanjutka...
  • Model Hirarki Jaringan & Cisco Enterprise Architecture
    Model Hirarki Jaringan Desain Jaringan Hirarki membagi jaringan menjadi beberapa lapisan. Yang menyerupai bentuk pohon. Setiap Lapisan me...
  • Pengertian Point to Point Protocol (PPP) dan Contoh Penerapannya
    Pengertian PPP (Point to Point Protocol) Network   -   Point-to-Point Protocol   (sering disingkat menjadi PPP) adalah sebuah proto...
  • ALGORITMA & PEMROGRAMAN JAVA - Penjumlahan Dua Bilangan Dengan JOptionPane
    Mendefinisikan masalah yang dilakukan mendapatkan kesimpulan bahwa ada 2 buah bilangan yang akan dimasukan ketika program...
  • Pola Fikir Hacker Dalam Mencari Celah Keamanan
    Berbagai macam jenis serangan yang dapat digunakan oleh hacker untuk menemukan celah keamanan di setiap targetnya. Namun sebelum menentuk...
  • Frame Relay Beserta Penerapannya Dalam Simulasi Jaringan
    Frame Relay beserta penerapannya dalam simulasi jaringan FRAME RELAY Frame Relay ialah teknologi   switching   yang memfasi...
  • ALGORITMA & PEMROGRAMAN JAVA - Menjumlahkan Dua Buah Matriks
    Menjumlahkan Dua Buah Matriks: Narasi: Mulai Import peralatan java Scanner, untuk menginputkan perintah dari keyboard Deklarasikan A...
  • PHP Dasar – MySQL
    MySQL merupakan salah satu DBMS open source yang paling populer pada saat ini. Meskipun dahulu MySQL pernah dikritisi karena tidak me...
  • TENTANG PHP
    PHP (Hypertext Preprocessor). Php adalah bahasa script yang dapat disisipkan ke dalam HTML (Hyper Text Markup Language), PHP lebih ba...
  • ALGORITMA & PEMROGRAMAN - Teknik Penyajian Algoritma
    Dalam penyajian Algoritma ada beberapa alat bantu agar pembuatan Algoritma nya lebih mudah, yaitu: Simbol Intruksi Flowchart Pseud...

Labels

Algoritma (8) Blog (5) CCNA 4 (3) Hardware (3) Java (5) PHP (16)

Entri Populer

  • Pengertian Point to Point Protocol (PPP) dan Contoh Penerapannya
    Pengertian PPP (Point to Point Protocol) Network   -   Point-to-Point Protocol   (sering disingkat menjadi PPP) adalah sebuah proto...
  • Model Hirarki Jaringan & Cisco Enterprise Architecture
    Model Hirarki Jaringan Desain Jaringan Hirarki membagi jaringan menjadi beberapa lapisan. Yang menyerupai bentuk pohon. Setiap Lapisan me...
  • ALGORITMA & PEMROGRAMAN JAVA - Penjumlahan Dua Bilangan Dengan JOptionPane
    Mendefinisikan masalah yang dilakukan mendapatkan kesimpulan bahwa ada 2 buah bilangan yang akan dimasukan ketika program...

Tentang Saya

  • Bimbim
  • Unknown

Label Cloud

Algoritma Blog CCNA 4 Hardware Java PHP
Back to top!
Copyright 2013 Learning To Earning - All Rights Reserved Powered by Blogger