MODUL PEMROGRAMAN WEB

dokumen-dokumen yang mirip
Pemrograman Web Lanjut 2017

MODUL PEMROGRAMAN WEB

DATABASE OPERATION. Pemrograman Web. Rajif Agung Yunmar, S.Kom

MODUL 6 SESSION DAN USER AUTHENTICATION

MODUL 7 SESSION DAN USER AUTHENTICATION

MODUL PEMROGRAMAN WEB

LAPORAN PRAKTIKUM 5 SESSION & COOKIE

MODUL PEMROGRAMAN WEB

MODUL PEMROGRAMAN WEB

MODUL 11 MEMBUAT LOGIN USER

Membuat Login Dengan PHP dan MYSQL

MATERI WEB. Pembuatan Login Aplikasi, Dasboard Admin & Menu Keluar menggunakan PHP & Mysql. Bas-Dev : Ahmad Bastiar

SMH2D3 Web Programming. 7 BAB V PHP SESSION & COOKIES. H a l IDENTITAS. Kajian Teknik pemrograman menggunakan PHP

Membuat Database mysql dengan PhpMyAdmin

Membuat Halaman Login Dengan PHP

Pemrograman Web. PHP State, Session dan Cookies. Adam Hendra Brata

MODUL 6 REDIRECT, SESSION & COOKIE

MODUL 6 Redirect,Session, dan Cookies

Mahasiswa memahami Pengertian Basisdata, Cara membuat basisdata, cara menginput data dan cara menampilkan data.

Praktikum 3 Cookie, Session, dan Database MySQL

MODUL PEMROGRAMAN WEB

Hak Akses dan Login Multi User. Baiklah untuk mulai praktek yang pertama ini file yang dibutuhkan adalah seperti yang terlihat dalam gambar berikut :

Modul Pembuatan Aplikasi Login dengan PHP dan MySQL

DESKRIPSI PERANCANGAN PERANGKAT LUNAK SISTEM PENTIKETAN ELEKTRONIK KONSER (SPEK) Dipersiapkan oleh: Kelompok 3

E-trik Ajax. Database MySQL. Dedi Alnas

TUTORIAL PHP MYSQL Langkah Tepat menjadi Web Developer Handal, menguasai PHP dan MySQL, jalan terbaik membuat website dan aplikasi berbasis web

Langkah Cara Membuat Form Login Menggunakan PHP dan MySQL Langkah 1: Membuat Tabel MySQL User/Pengguna

BAB IX COOKIE DAN SESSION

Bab 13 Tentang SESSION

Dasar PHP-MySQL oleh : Prasaja Wikanta

Pemrograman Web. PHP State, Session dan Cookies. Adam Hendra Brata

Pemrograman Web. Pertemuan Ke-8 dan 9 Server Side Scripting. Server Side Scripting 1

Fungsi fungsi tambahan dalam PHP Session dan Cookie

Pemrograman Web Lanjut 2017

MySQL J A M K E T I G A

Menangani Input dari User

MODUL 10 KONEKTIVITAS PHP DENGAN MySQL

MODUL 5 KONEKTIVITAS PHP DENGAN MySQL

MODUL 5 GET & POST Pemograman Web Teknik Informatika Universitas Pasundan Bandung 2016/2017

b) Membuat database tiket. Siapkan databasenya dengan membuat database tiket Sampai langkah ini database tiket sudah siap digunakan

Basis Data I. Pertemuan Ke-12 (Aplikasi Basisdata berbasis web) Noor Ifada.

BAB 5 MEMAHAMI METHOD GET DAN POST PADA PHP

BAB VII Database MYSQL

MODUL PEMOGRAMAN WEB II STMIK IM BANDUNG MODUL PEMOGRAMAN WEB II. Oleh: CHALIFA CHAZAR. Chalifa Chazar edu.script.id

PHP dan MySQL. Mempelajari koneksi PHP. Fungsi-fungsi aksesnya. Muhammad Zen Samsono Hadi, ST. MSc

Pemrograman Web Lanjut 2017

Pertama-tama kita buat form login terlebih dahulu. login.htm

Tag dasar yang akan kita gunakan untuk membuat form di HTML adalah tag form, input, textarea, select dan option.

PHP dan MySQL. Mempelajari koneksi PHP dengan database MySQL dan Fungsi-fungsi aksesnya. Muhammad Zen S. Hadi, ST. MSc.

DATABASE MYSQL DENGAN PHP

Widhy Hayuhardhika NP, S.Kom

BAB IV HASIL DAN PEMBAHASAN

MODUL PEMOGRAMAN WEB II STMIK IM BANDUNG MODUL PEMOGRAMAN WEB II. Oleh: CHALIFA CHAZAR. Chalifa Chazar edu.script.id

Membuat CRUD Sederhana Menggunakan PHP Dengan Mysqli Extension

P - 12 Bab 9 : PHP & MySQL

Membuat Toko Buku dengan PHP - MySQL

BAB III PEMBAHASAN 3.1 Analisa Sistem

State HTTP, PHP. Pemrograman Web - State. Agi Putra Kharisma, ST., MT.

session_start(); //perintah ini harus ada pada setiap halaman yang berhubugan dengan session $_SESSION['sesLogin']=$user;

5.2 Keuntungan dan Kelemahan Cookie

Perangkat Lunak Pengembangan Web

Pemrograman Web Lanjut 2017

SESSION. Aplikasi IT-2 Program Studi Akuntansi Universitas Komputer Indonesia 2013 Oleh: Donny Reza, S.Kom

Lisensi Dokumen: Uraian Kasus :

Session. Pendahuluan

KURSUS ONLINE JASA WEBMASTERS

MODUL 7 MEMBUAT DATABASE DI MYSQL

Pemrograman Web Lanjut 2017

KapitaSelekta. (KBKI82127, 2 sks) Materi : Pengenalan MySQL

BAB IV IMPLEMENTASI SISTEM

BAB IV IMPLEMENTASI SISTEM DAN PENGUJIAN

MAKALAH JARINGAN KOMPUTER Session Model OSI

[FORM AND FRAME] PEMROGRAMAN WEB MODUL [ O L E H : Y U N I T A P R A S T Y N I N G S I H, S. K O M ]

Pemrograman Basis Data Berbasis Web

Pemrograman Web Lanjut 2017

Materi 10: Create Read Update Delete

BAB V IMPLEMENTASI DAN PENGUJIAN. lingkungan perangkat lunak, implementasi database beserta struktur program dan

Konektivitas PHP - MySQL

MODUL 8 Insert, Update, & delete

PHP SESSION & COOKIES

PRAKTIKUM PHP 10. Menyimpan Data ke Database & Menampilkan Data dengan PHP

Pengembangan Web Service Untuk Aplikasi Zodiak 1. Menyiapkan database yang akan digunakan 2. Menulis kode program untuk aplikasi server

Simak baik-baik komentar-komentar dalam setiap skrip. Komentar diawali dengan tanda #, //, atau /* dan */

BAB XIII BEKERJA DENGAN SESSION

BAB V IMPLEMENTASI DAN PENGUJIAN SISTEM. menggunakan basis data MySQL. Aplikasi PHP dapat dijalankan pada Operating

Cara Sederhana Import Data dari Excel (CSV) ke MySQL dengan PHP

Dengan asumsi bahwa aplikasi masih menggunakan cookie, maka query untuk membuka profil adalah seperti berikut:

BAB II DASAR TEORI. 2.1 Konsep Dasar Sistem Aplikasi Pengertian Sistem. Pengertian sistem adalah kumpulan dari elemen-elemen yang berinteraksi

MODUL 1 PHP. (Variabel, Tipe Data, Operator)

Pemrograman Basis Data Berbasis Web

BAB IV IMPLEMENTASI DAN PENGUJIAN. web ini yang di lakukan secara online dengan webhosting. Tahapan ini dilakukan

BAB V IMPLEMENTASI DAN PENGUJIAN SISTEM. perancangan sistem agar siap untuk dioperasikan. Implementasi Sistem

P - 7 Pembahasan UTS PSIK V

BAB IV IMPLEMENTASI DAN EVALUASI. telah dibuat pada tahap tiga. Adapun kebutuhan software (perangkat lunak) dan

BAB IV IMPLEMENTASI DAN PENGUJIAN

Membuat Aplikasi Tampil, Entri, Edit, Delete Mahasiswa

Bab 4. Hasil dan Pembahasan

PHP Accessing MySQL Database. Fajar Pradana S.ST., M.Eng

E-trik Ajax. Ajax dan MySQL. Dedi Alnas

Form identik dengan formulir

Transkripsi:

MODUL PEMROGRAMAN WEB SESSION & COOKIE Rajif Agung Yunmar, S.Kom STMIK AMIKOM Yogyakarta 2011

DAFTAR ISI Session & Cookie... 1 1. Session... 2 2. Cookie... 4 3. Program Autentikasi... 5 Daftar Pustaka... 10

SESSION & COOKIE Koneksi protokol HTTP adalah koneksi stateless, yang artinya secara default protokol ini tidak memiliki fasilitas untuk menangani lebih dari satu transaksi. Sebagai contoh : jika suatu variabel dideklarasikan pada program A, maka variabel tersebut tidak akan dikenali pada program B. Perhatikan contoh program dibawah ini : 07.latihan_01.php $sesuatu = 14; echo $sesuatu; 07.latihan_02.php echo $sesuatu; 1

Dari kedua skrip latihan program diatas tampak bahwa variabel $sesuatu yang dideklarasikan pada program 07.latihan_01.php tidak dikenali pada 07.latihan_02.php. Oleh karena itu, diperlukan sebuah mekanisme agar sebuah variabel dapat dikenali dan dapat dioperasikan di program manapun. Terdapat dua cara yang dapat digunakan untuk mengatasi permasalahan tersebut diatas, yaitu menggunakan session dan cookie. Terdapat banyak kasus yang dapat diselesaikan menggunakan session dan cookie, diantaranya yaitu : proses autentikasi, keranjang belanja, statistik, dll. 1. Session 07.latihan_03.php session_start(); $_SESSION['sesuatu'] = 14; echo $_SESSION['sesuatu']; 07.latihan_04.php session_start(); echo $_SESSION['sesuatu']; 2

Saat ini, variabel $_SESSION['sesuatu'] dapat dikenali dan dioperasikan pada skrip program manapun melalui bantuan session. Sebelum digunakan, sebuah session terlebih dahulu harus melalui proses inisialisasi menggunakan fungsi session_start(). Fungsi ini akan memeriksa apakah seorang user saat ini telah memiliki sebuah session (masingmasing user memiliki session yang berbeda-beda). Jika sudah memiliki session, data pada session tersebut akan diimport ke program yang saat ini sedang dijalankan. Data pada session ini ditangani oleh PHP melalui array $_SESSION. Karena berbentuk array, kita dapat menggunakan fungsi print_r() untuk melihat deskripsi (index dan value) dari array tersebut. 07.latihan_05.php session_start(); echo "<pre>"; print_r($_session); echo "</pre>"; 3

2. Cookie Session dan cookie digunakan untuk tujuan yang sama, yaitu bagaimana agar sebuah variabel dapat dikenali dan dioperasikan pada semua program. Data yang tersimpan pada sebuah session disimpan di sisi server, sehingga user tidak dapat melihat data-data tersebut secara langsung. Berbeda dengan session, data pada cookie diletakkan di sisi client, sehingga user dapat melihat bahkan memodifikasi dan menghapus cookie tersebut. Hal tersebut sering membuat penyimpanan data menggunakan cookie menjadi tidak efektif, apalagi user dapat menonaktifkan penggunaan cookie melalui setting browser yang mengakibatkan penggunaan cookie menjadi sia-sia. 07.latihan_06.php setcookie('sesuatu', 14); Setelah sebuah variabel cookie dideklarasikan, ia akan disimpan di sisi client dan selalu tersedia saat browser mengakses website (selama masa kadaluarsa cookie belum habis). Screenshot dibawah ini menunjukkan kepada kita mengenai informasi cookie yang tersimpan pada browser client (Firefox Preference Privacy remove individual cookies). 4

Data pada cookie ini ditangani oleh PHP melalui array $_COOKIE. Oleh karena berbentuk array, kita dapat menggunakan fungsi print_r() untuk melihat deskripsi (index dan value) dari array tersebut. 07.latihan_07.php echo "<pre>"; print_r($_cookie); echo "</pre>"; 3. Program Autentikasi Salah satu program yang erat hubungannya dengan session dan cookie adalah aplikasi autentikasi. Pada contoh kali ini kita akan menggunakan session, karena dirasa lebih aman dan cocok untuk kasus autentikasi. Program autentikasi yang akan kita buat kali ini telah terintegrasi dengan basis data, sehingga nantinya contoh program ini dapat diterapkan secara langsung pada proyek aplikasi website. Pertama-tama kita persiapkan struktur basis datanya terlebih dahulu. 07.latihan_08.sql CREATE TABLE user ( username VARCHAR (25) NOT NULL PRIMARY KEY, password VARCHAR (35) NOT NULL ); 5

07.latihan_09.sql INSERT INTO user (username,password) VALUES ('amikom','amikom0k3'); INSERT INTO user (username,password) VALUES ('juminten','adadeh'); INSERT INTO user (username,password) VALUES ('rajiva','123456'); 07.latihan_10.php session_start(); if(isset($_session['username'])){ <h2>control Panel</h2> <p> Selamat datang user " echo $_SESSION['username']; ". Klik <a href="07.latihan_13.php">disini</a> untuk logout. </p> } else { <h2>sorry..</h2> <p> Anda tidak berhak mengakses halaman ini. Silakan <a href="07.latihan_11.php">login</a> terlebih dahulu. </p> } Pada skrip program 07.latihan_10.php diatas, akan dilakukan pemeriksaan apakah seorang user sudah ter-autentikasi melalui fungsi isset($_session['username']). Seperti telah diketahui sebelumnya, fungsi isset() digunakan untuk memeriksa apakah sebuah variabel sudah pernah dideklarasikan sebelumnya. 6

Dalam hal ini, variabel $_SESSION['username'] akan dideklarasikan hanya jika user telah melakukan login dengan username dan password yang tepat. Jika belum terautentikasi, user akan dibawa ke halaman login. 07.latihan_11.php <html> <head> <title>form Login</title> </head> <body> <form action="07.latihan_12.php" method="post"> Username : <input type="text" name="txtusername" /> <br /> Password : <input type="password" name="txtpassword" /> <br /> <input type="submit" value="login" /> </form> </body> </html> Program diatas menyediakan form login yang terdiri dari input dengan tipe text, input bertipe password dan sebuah tombol submit. Data username dan password akan dikirimkan ke skrip 07.latihan_12.php menggunakan metode POST untuk diolah lebih lanjut. 7

07.latihan_12.php session_start(); include("koneksi.php"); $sql = "SELECT username FROM user "; $sql.= "WHERE username='".$_post['txtusername']."' "; $sql.= "AND password='".$_post['txtpassword']."' "; $hasil = mysql_query($sql) or exit("error query : <b>".$sql."</b>."); if(mysql_num_rows($hasil)>0){ $data = mysql_fetch_array($hasil); $_SESSION['username'] = $data['username']; header("location:07.latihan_10.php"); exit(); } else { <h2>sorry..</h2> <p> Username atau password salah. Klik <a href="07.latihan_11.php">disini</a> untuk kembali login. </p> } Pada skrip program diatas, data login yang diinputkan oleh user diolah sebagai parameter dari sebuah query. Query tersebut akan mencocokkan data login yang terdiri dari username dan password dengan data yang ada pada basis data. Jika data yang diinputkan cocok, maka variabel $_SESSION['username'] akan segera dideklarasikan dan menampung data username tadi. Fungsi mysql_num_rows() berguna untuk menghitung baris data yang dihasilkan dari sebuah query. Dalam kasus ini, fungsi tersebut akan mengembalikan nilai 0, jika data username dan password yang diinputkan tidak cocok dengan data manapun pada basis data. Jika proses autentikasi berhasil, selanjutnya user akan dibawa (redirect) ke halaman 07.latihan_11.php melalui statement header("location:07.latihan_10.php");. 8

07.latihan_13.php session_start(); unset($_session['username']); <h2>terima Kasih</h2> <p> Anda telah logout dari system. Klik <a href="07.latihan_11.php">disini</a> untuk kembali login. </p> Skrip program diatas berguna untuk menghapus data session dari seorang user melalui fungsi unset(), fungsi ini akan menghapus variabel $_SESSION['username'] dari web server. Terdapat cara lain yang bisa digunakan untuk menghapus data session dari seorang user, yaitu menggunakan fungsi session_destroy(). Kekurangannya, jika seorang user memiliki banyak data session, ia akan menghapus semua data session dari user tersebut. Berbeda dengan fungsi unset() yang hanya menghapus data session tertentu saja. 9

DAFTAR PUSTAKA 1. Mulyana, Y.B. 2004. Trik Membangun Situs Menggunakan PHP dan MySQL. Jakarta: PT Elex Media Komputindo. 2. Buzton, Toby. 2002. PHP By Example. Indianapolis, Indiana: Que. 3. Muhardin, Endy. 2003. PHP Programming Fundamental dan MySQL Fundamental. IlmuKomputer.Com 4. Rasmus, Lerdorf., Dkk. 2003. PHP 5 Manual. PHP Documentation Group. 10