You are on page 1of 15

TUGAS SISTEM INFORMASI BERBASIS WEB MEMPELAJARI TENTANG PENGGUNAAN SESSION DALAM PHP

DISUSUN OLEH : NAMA NIM : DEWI APRIANA : 09071003036

JURUSAN : SISTEM INFORMASI 6B

FAKULTAS ILMU KOMPUTER UNIVERSITAS SRIWIJAYA 2009 2010

1DAFTAR ISI
Daftar Isi................................................................................................................................1 I. Pendahuluan........................................................................................................................2 Defenisi Session.... 2 Perintah perintah Session....................................................................................................5 Aturan-aturan dalam Session.................................................................................................5 Membuat form login dedngan menggunakan teknik session.................................................6 Pengisian berita oleh operator menggunakan session............................................................8 Contoh membuat session.......................................................................................................11 Menghapus variable session..................................................................................................13 Penerapan session..................................................................................................................13 Daftar Pustaka........................................................................................................................14

ISI MEMPELAJARI TENTANG PENGGUNAAN SESSION DALAM PHP I. PENDAHULUAN


Ketika kita bekerja dengan sebuah aplikasi, kemudian kita membuka dan kemudian menutup aplikasi tersebut hal ini seperti sebuah session. Dengan demikian komputer dapat mengetahui siapa kita. Hal ini diketahui ketika kita memulai dan menutup aplikasi berbasis web. tetapi ada satu problem yaitu pada webservernya tidak mengetahui siapa kita dan dari mana kita berasal, ini dikarena pada alamat HTTP tidak dapat menyimpan posisi yang ada sebelumnya. Pada PHP hal tersebut dapat diselesaikan dimana seluruh informasi yang dilakukan pada server memungkinkan hal itu dapat tersimpan contoh username, daftar penjualan dan lain sebagainya. kita dapat menggunakan fungsi session yang terdapat pada PHP. bagaimanapun, informasi yang terdapat pada session hanya bersifat sementara dan akan dihapus ketika user meninggalkan website tersebut. Banyak digunakan oleh programmer berlatar belakang C/C++ karena kemiripan syntaxnya. Open source, karenanya gratis dan bebas. Database pasangannya biasanya MySQL, dijalankan bersama webserver Apache di atas operating system Linux. Semuanya gratis dan bebas.

1.

Defenisi Session
session adalah variable yang dapat mempertahankan isinya dalam periode waktu tertentu

(bisa diset) dan disimpan diserver. Meskipun berpindah-pindah halaman (dalam 1 website tersebut) variable masih bertahan. Jadi session hanyalah sebuah variable dengan karakteristik tertentu. Session bersifat uniq dari setiap pengunjung. jadi seandainya pengunjung bernama "dewi" maka session yang di miliki dewi adalah 1 dan selanjutnya begitu. uniq id akan di kirim dan disimpan pada cookies atau pada URL.

Untuk menjelaskan tentang SESSION dan kegunaannya, saya akan mulai dengan memberikan contoh visualisasi terlebih dahulu. Misalkan kita memiliki sebuah form sebagai berikut <form method="post" action="submit.php"> Bilangan ke-1 <input type="text" name="bil1" /><br /> Bilangan ke-1 <input type="text" name="bil1" /><br /> <input type="submit" name="submit" value="Submit" /> </form> Form di atas digunakan untuk memasukkan dua buah bilangan. Selanjutnya kita buat script untuk membaca kedua bilangan yang diinputkan tersebut submit.php <?php $bil1 = $_POST['bil1']; $bil2 = $_POST['bil2']; echo "Anda memasukkan bilangan ke-1 : ".$bil1."<br />"; echo "Anda memasukkan bilangan ke-2 : ".$bil2."<br />"; echo "<a href='lanjut.php'>Klik di sini</a>"; ?> Apabila kita telah memasukkan dua buah bilangan melalui form, kemudian mensubmitnya maka pada script submit.php akan memunculkan kedua bilangan tersebut dengan sukses. Pada submit.php ini terdapat pula link menuju script lanjut.php. Dalam script lanjut.php ini, kita juga akan menampilkan kedua bilangan yang diinputkan sebelumnya. lanjut.php <?php echo "Anda memasukkan bilangan ke-1 : ".$bil1."<br />"; echo "Anda memasukkan bilangan ke-2 : ".$bil2."<br />"; echo "<a href='lanjut.php'>Klik di sini</a>"; ?> Apa yang terjadi bila kita mengklik link menuju ke lanjut.php tersebut? Apakah

kedua bilangan yang diinputkan tadi masih bisa terbaca nilainya? Jawabannya adalah TIDAK. Kedua bilangan hanya bisa terbaca pada script submit.php saja, karena submit.php adalah halaman pertama setelah pemrosesan form. Mungkin kita perlu menambahkan perintah $bil1 = $_POST['bil1']; $bil2 = $_POST['bil2']; pada lanjut.php. Cara ini juga tidak bisa untuk membaca kedua bilangan. Untuk mengatasi hal ini terdapat 2 solusi yang bisa digunakan, yaitu menggunakan GET method atau SESSION. Apabila kita menggunakan GET method, maka caranya adalah menyisipkan parameter untuk kedua bilangan pada link menuju lanjut.php tersebut. Selanjutnya dalam lanjut.php, parameter kedua bilangan ini dibaca nilainya. submit.php <?php $bil1 = $_POST['bil1']; $bil2 = $_POST['bil2']; echo "Anda memasukkan bilangan ke-1 : ".$bil1."<br />"; echo "Anda memasukkan bilangan ke-2 : ".$bil2."<br />"; echo "<a href='lanjut.php?bil1= ".$bil1."&bil2=".$bil2."'>Klik di sini</a>"; ?> lanjut.php <?php $bil1 = $_GET['bil1']; $bil2 = $_GET['bil2']; echo "Anda memasukkan bilangan ke-1 : ".$bil1."<br />"; echo "Anda memasukkan bilangan ke-2 : ".$bil2."<br />"; ?> Cara di atas akan dapat memunculkan kedua bilangan pada lanjut.php. Tetapi cara ini terdapat kelemahan yaitu ditampilkannya nilai input sebagai parameter dalam URL link. Apabila kita menggunakan SESSION, kita tidak perlu menuliskan nilai input dalam URL link. Nilai input ini nantinya akan disimpan dalam suatu variabel SESSION. Selama browser kita masih aktif

(belum keluar dari browser) atau sengaja dinonaktifkan (dihapus) SESSION nya, maka variabel SESSION ini masih terus aktif. Nilai yang disimpan dalam variabel SESSION ini bisa dibaca atau dikenali di beberapahalaman script. Beda dengan variabel biasa. Kalau variabel biasa itu hanya dikenali pada halaman script tersebut saja. Untuk penyimpanannya, kita harus mengaktifkan SESSION terlebih dahulu menggunakan perintah session_start(); Setelah SESSION aktif, kemudian membuat variabel SESSION untuk menyimpan nilai. Berikut ini perintah untuk menyimpan sebuah nilai ke dalam variabel SESSION $_SESSION['nama'] = value; Nilai yang bisa disimpan dalam SESSION ini bisa berupa bilangan, array, karakter maupun string.
2.

Perintah perintah Session


Session_start() berfungsi untuk memulai atau mengaktifkan session. Session_Register() berfungsi untuk mrndaftarkan suatu variable ke dalam session. Parameter dari fungsi ini adalah nama variable yang akan disimpan di session.

Session_Unregister() berfungsi untuk menghapus variable yang disimpan di session.

Session_is_ registered() berfungsi untuk memeriksa apakah suatu variable ada/terdaftar dalam session.

Session_unset() berfungsi menghapus semua variable yang terdaftar dalam session. Session_destroy() berfungsi untuk menutup/menghapus session beserta file sessionnya.

3.

Aturan aturan dalam session


Session_start() hanya dapat dilakukan di awal file. Contoh yang benar: <?php Session_start(); ?>

Contoh yang salah : <html> dikatakan salah karena terdapat syntak <html> sebelum Session_start();, <?php Session_start(); ?> atau <?php dikatakan salah karena terdapat enter sebelum Session_start(); Session_start(); ?>

4.

Membuat form login dengan menggunakan teknik session.


Skip pertama yang akan dibuat adalah form login untuk reporter,dimana apabila seorang

reporter ingin pengisian berita ,maka dia harus melakukan login terlebih dahulu.untuk lebih amanya proses login ini ,maka kita akan menambahkan teknik session ,yaitu teknik penyimpanan variable di server ,dalam pengembanganya nanti bisa ditambahkan teknik enskripsi agar lebih aman. Untuk membuat session,culup mudah ,anda hanya tinggal mendaftarkan suatu variable saja yang akan menjadi session ke server,ada tiga fungsi penting dalam membuat session,yatu: Session_start( ); //untuk memulai star Session_register( ); //untuk daftarkan session ke server Session_Destroy( ); //untuk akhir session Skip form_login.php

<html> <body> <h3>login reporter</h3> <form method=post action=cek_login.php> username: <input type=text name=username><br> password: <input type=password name=password><br> <input type=submit value=login> </form> </body> </html>

Outputnya :

Skip cek_login.php <? include "koneksi_detik.php"; $login=mysql_query("select* from reporter where username='$username' and password='$password'"); $data =mysql_fetch_array($login); if ($data[username]==$username and $data[password]==$password) { session_start();

session_register("namauser"); session_register("passuser"); $namauser=$data[username]; $passuser=$data[password]; header("location:form_berita.php"); } else { echo "gagal,username &password salah <br>"; echo"<A href=form_login.php>ulangi lagi</a>"; } ?> Skrip logout.php <? session_star(); session_destroy(); echo "anda tlah keluar sistem [LOGOUT]<br><br>"; echo"<a href=index.php> ke halaman utama</a>"; ?>
5.

Pengisian berita oleh operator menggunakan session Apabila proses login benar ,maka reporter tersebut berhak untuk pengisian berita .Yang

perludiperhatikan saat pengisian berita adalah data user dan no_kategori ditabel berita harus benarmengacu pada tabelkategori dan reporter Skip from_berita.php <? session_start(); if(!empty ($namauser) and !empty($passuser)) { echo"<h3>input berita</h3>

<form method=post action=input_berita.php> judul: <input type=text size=60 name=judul_berita><br> kategori:<select name=no_kategori> <option value=0 selected>--pilih kategori--"; //tamoilkan nama2 kategoripada kombo include"koneksi_detik.php"; $tampil=mysql_query("select*from kategori order by nama_kategori"); while($data=mysql_fetch_array($tampil)) { echo"<option value= $data[no_kategori]>$data[nama_kategori]"; } echo"</option></select><br> headline berita:<br><textarea name=headline_berita cols=50 rows=5></textarea><br> isi berita:<br><textarea name=isi_berita cols=60 rows=10></textarea><br> <input type=submit value=kirim></form>"; } else { echo "untuk isi berita,anda harus login<br>"; echo "<A href=form_login.php>login</a>"; } ?>

Outputnya :

Skip input_berita.php <? session_start(); if(!empty ($namauser) and !empty ($passuser)) { $hr=array("minggu","senin","selasa","rabu","kamis","jum'at","sabtu"); $hari_ini=date("w"); $hari=$hr($hari_ini); $tgl_berita=date("ymd"); $jam_berita=date("H:i:s"); include "koneksi_detik.php"; $input=mysql_query("insert erita) values('$no_kategori','$namauser','$judul_berita', '$headline_berita','$isi_berita','$hari','$tgl_berita','$jam_berita')"; $hasil=mysql_query($input); if($hasil) { echo"proses input berita berhaasil<br>"; echo"<a href=form_berita.php>isi lagi</a><br>"; echo"<a href=lagout.php>lagout</a>"; } else {"proses input berita gagal";} } into berita(no_kategori,username,judul_berita,headline_berita,isi_berita,hari,tgl_berita,jam_b

else{ echo "untuk isi berita anda harus login dahulu <br>"; echo"<a href=form_login.php>login</a>"; } ?> Outputnya :

6.

Contoh membuat session


Source code:

File buat_session.php akan berisi kode sebagai berikut : <?php Session_start(); //Buat Session (jika belum ada), atau //Buka Session (jika sudah ada) Session_Register(nama, banyak berkunjung);

//Daftarkan 2 buah variable ke session yaitu nama dan banyak berkunjung. $_SESSION[nama]=Dewi Apriana; $_SESSION[Banyakberkunjung]=1; ?> <html> <head><title>Membuat Session</title></head> <body> SESSION TELAH DIBUAT.<br> Selamat Datang <b><?php echo $_SESSION[nama];?></b><br> Banyak berkunjung adalah <?php echo $_SESSION[Banyakberkunjung ];?> </body> </html> Outputnya : Dengan menggunakan web browser, seperti Mozila Firefox, isi alamat yang akan diakses dengan data sebagai berikut : http://localhost/ buat_session.php Dengan catatan file buat_session.php disimpan langsung di dalam folder htdocs, hasilnya adalah sebagai berikut :

7.

Menghapus Variabel SESSION


Terdapat 2 cara untuk menghapus variable session yaitu:S 1. Dengan cara keluar dari browser (EXIT).
2. Dengan cara gunakan perintah berikut ini pada script session_destroy();.Dengan

perintah ini, maka semua variable akan terhapus. Untuk menghapus suatu variable Session tertentu maka digunakan perintah unset(). unset($_SESSION['nama session']);

8.

Penerapan SESSION
Biasanya, SESSION ini digunakan untuk keperluan autentifikasi user melalui login.

Adapun idenya adalah apabila user sukses melakukan login, maka username ini akan disimpan dalam sebuah SESSION. Dengan disimpannya username ke dalam SESSION sekaligus bisa digunakan untuk mencegah adanya penyusup yang masuk ke aplikasi tanpa melalui login. untuk
mengecek ada tidaknya penyusup yang masuk ke aplikasi tanpa login, bisa hanya dengan mengecek SESSION nya. Jika penyusup tadi masuk ke aplikasi tanpa login, otomatis SESSION nya belum ada, karena SESSION baru ada ketika user login dengan sukses.

Daftar Pustaka

www.google.co.id

You might also like