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

dokumen-dokumen yang mirip
Pemrograman Web. PHP State, Session dan Cookies. Adam Hendra Brata

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

PHP SESSION & COOKIES

5. State. PTI15010 Pemrograman Web. Agi Putra Kharisma, S.T., M.T. Genap 2014/2015. Desain slide ini dadaptasi dari University of San Fransisco

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

MODUL 6 Redirect,Session, dan Cookies

MODUL 6 REDIRECT, SESSION & COOKIE

Dasar Pemrograman Web. Pemrograman Web. Adam Hendra Brata

M.K. Pemrograman Web (AK ) Konsep Pemrograman Web

PHP HTML : SESSION - COOKIES

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

Web Programming. Elfan Nofiari. IF-ITB/EN/Mar-05 IF3292 Web Programming. Page 1

MODUL PEMROGRAMAN WEB

LAPORAN PRAKTIKUM 5 SESSION & COOKIE

Teknik Informatika S1

PHP HTML : SESSION PHP COOKIES

MODUL 7 SESSION DAN USER AUTHENTICATION

MODUL 6 SESSION DAN USER AUTHENTICATION

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

PRAKTIKUM ASP.NET 12

BAB III ANALISIS MASALAH

Persiapan. Jalankan server apache dari XAMPP control panel Ekstrak file yang telah dibagikan, Salin folder week_8 ke htdocs

DASAR-DASAR WEB DESIGN

BAB III PERANCANGAN APLIKASI

Hal yang paling utama dalam proses pembuatan web server adalah memilih software mana yang akan digunakan sebagai web server yang akan digunan.

Pert 11 DASAR-DASAR WEB DESIGN

Fungsi fungsi tambahan dalam PHP Session dan Cookie

MAKALAH JARINGAN KOMPUTER Session Model OSI

Pertemuan 1. Pengenalan Dasar Web

Perancangan Website Ujian. Teknik Elektro UNDIP Berbasis HTML

Modul 5 AJAX TUJUAN PRAKTIKUM : PERLENGKAPAN PRAKTIKUM LANDASAN TEORI. Latar Belakang Munculnya Ajax. Definisi Ajax.

Web Server A. DASAR TEORI

BAB III ANALISIS DAN PERANCANGAN

Ruko Jambusari No. 7A Yogyakarta Telp. : ; Fax. :

KEAMANAN WEB BROWSER SISTEM KEAMANAN TEKNOLOGI INFORMASI

Teknik Informatika S1

BAB II LANDASAN TEORI. diperlukan dalam pembangunan website e-commerce Distro Baju MedanEtnic.

JURUSAN SISTEM KOMPUTER FAKULTAS ILMU KOMPUTER UNIVERSITAS SRIWIJAYA

AJAX. Pemrograman Web 1. Asynchronous JavaScript and XML. Genap

Pertemuan Ke-1 (Konsep Dasar Web) D3 Manajemen Informatika - Unijoyo 1

Lebih kompatibel dengan Windows karena memang IIS adalah keluaran Microsoft.

Materi 2 Komputer Aplikasi IT (KAIT) 2 SKS Semester 1 S1 Sistem Informasi UNIKOM 2014 Nizar Rabbi Radliya nizar.radliya@yahoo.com

Pengantar Pemrograman Internet

Kebijakan Privasi (Privacy Policy)

Pemrograman PHP Lanjut. Ahmad Zainudin, S.ST Pemrograman Internet

Studi dan Analisis Penggunaan Secure Cookies Berbasis Kriptografi Kunci Publik untuk Aplikasi ecommerce

01. Pengenalan Internet

MODUL GET DAN POST

PANDUAN MENGGUNAKAN LUMAJANGKAB.GO.ID

HTTP Protocol Ketika sebuah alamat web (atau URL) yang diketik ke dalam web browser, web browser melakukan koneksi ke web service yang berjalan pada

CodeIgniter.

Perangkat Lunak Pengembangan Web

Rekayasa Sistem Web. Teguh Wahyono. Fakultas Teknologi Informasi Semester Antara Tahun 2012/2013

BAB V IMPLEMENTASI DAN PENGUJIAN

BAB III IDENTIFIKASI DAN KLASIFIKASI WEB LOG

Tugas Bahasa Indonesia

BAB XIII BEKERJA DENGAN SESSION

TASK 5 JARINGAN KOMPUTER

5.2 Keuntungan dan Kelemahan Cookie

WWW (World Wide Web) Adalah salah satu bentuk layanan yang dapat diakses melalui internet. Biasa disingkat sebagai Web. Merupakan sekumpulan

BAB III LANDASAN TEORI

Pemrograman Basis Data Berbasis Web

APLIKASI e-hosting STANDARD OPERATING PROCEDURE (SOP) REV.1 PT PLN (PERSERO) DISTRIBUSI JAWA TIMUR

BAB 1 PENDAHULUAN. 1.1 Latar Belakang

PENGERTIAN WEBSITE DAN FUNGSINYA

DASAR-DASAR Web Programing(WP) copyright by : japikinfo.com

BAB I. Pendahuluan. 1.1 latar belakang masalah. 1.2 Rumusan Masalah. 1.3 Tujuan

STMIK DIKTAT SINGKAT MACROMEDIA DREAMWEAVER 8 SEKOLAH TINGGI MANAJEMEN INFORMATIKA DAN KOMPUTER TASIKMALAYA.

Pengamanan Web Browser

CHAPTER 6. Sebelum membuat starter data, kita perlu meng-create collections terlebih dahulu. Buat folder lib pada folder aplikasi.

BAB 3 Landasan Teori

Pemrograman Web I (Mengenal. Web) Oleh : Devie Rosa Anamisa

DATABASE SERVER WEB SERVER SUBDOMAIN

Pemrograman Web PHP & MySQL untuk Sistem Informasi Perpustakaan

SISTEM INFORMASI PEMBANGUNAN DAERAH (SIPD)

STMIK AMIKOM Yogyakarta. Keamanan Komputer: Web Security

Hal yang harus diperhatikan dalam penggunaan AJAX adalah: XHTML dan CSS digunakan untuk menandai dan mempercantik tampilan informasi.

BAB II LANDASAN TEORI. Perangkat lunak atau Software adalah perintah (program komputer) yang dieksekusi

Pokok Bahasan 2 Teknologi Dasar Internet dan Web. L. Erawan

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

Mahasiswa memahami Pengertian, fungsi, aplikasi untuk menjalankan JavaScript, cara menjalankan kode, cara memasukkan kode JavaScript ke dalam HTML

Session. Pendahuluan

Oleh: Ahmad Syauqi Ahsan

Pengantar E-Business dan E-Commerce

Pemrograman PHP & MySQL

MENGANALISA WEBSITE K E A M A N A N S I S T E M E R W I E N T J I P T A W I J A Y A, S T., M. K O M

Eksekusi file setup.exe yang ada dalam CD atau folder instalasi oracle.

BAB II LANDASAN TEORI

BAB 4 IMPLEMENTASI DAN EVALUASI. a. Spesifikasi piranti keras pada local server: Processor : Intel Pentium IV 1.8 Ghz

Interactive Broadcasting

Konsep Pemrograman Internet dan Web

HTTP Protokol standar yang digunakan untuk mengakses dokumen HTML HTTPS Protokol untuk mengakses dokumen HTML yang melalui jalur aman/ terenskripsi

Bagian 7 MENGGUNAKAN SESSION DAN COOKIES

BAB III ANALISA DAN PERANCANGAN SISTEM

Pemrograman Internet dengan AJAX (Asynchronous JavaScript And XML)

BAB 4 IMPLEMENTASI DAN EVALUASI. dibutuhkan seperti sumber daya perangkat lunak, sumber daya perangkat keras, dan juga

Pengujian Perangkat Lunak & Web App. Nisa ul Hafidhoh

MANUAL PENGGUNAAN APLIKASI PELAKU USAHA

Transkripsi:

Pemrograman Web State, dan Adam Hendra Brata

Stateless Statefull

State

State State = Keadaan Website pada umumnya menggunakan protokol HTTP Pada dasarnya protokol HTTP memiliki sifat stateless Pada interaksiyang bersifat stateless, maka antara suatu interaksi request-response dengan request-response lainnya bersifat independen, tidak memiliki keterkaitan satu sama lain Server HTTP tidak mengingat apa yang terjadi pada interaksi request-response yang terjadi Pada interaksi stateless, server HTTP tidak menyimpan state yang berhubungan dengan klien

State Sistem langsung memberikan response kepada user dengan langsung memberikan halaman baru

State Stateful adalah kemampuan situs untuk mempertahankan state (keadaan) Pada interaksi statefull, membuat sebuah website dapat menyimpan keadaan seorang user walaupun komunikasi data di jaringan tetap menggunakan HTTP Use Destroy Create

State Sistem mengetahui keadaan user sekarang dan dapat melanjutkan halaman apa yang diminta oleh user daripada dia memberikan apa yang diminta user dengan langsung memberikan halaman baru

State Penggunaan State Bagaimana pengguna tetap logged-in ketika dia berpindah-pindah halaman? Bagaimana keranjang belanja pengguna tetap tersimpan ketika pengguna tersebut melihat lihat barang di halaman lain untuk ditambahkan ke keranjang belanja tersebut?

State State dapat dibentuk menggunakan : Create Use Destroy

Cookie adalah file kecil yang diletakkan oleh server pada komputer pengguna Cookie dikirim setiap kali pengguna mengakses web yang menjadi pemilik cookie tersebut, sehingga, ukuran cookie perlu diperhatikan supaya tidak membebani jaringan secara berlebihan Ketika kita mendefinisikan suatu cookie, maka kita menentukan berapa lama cookie tersebut valid. Jika telah melampaui waktu valid (expires), maka cookie tersebut akan dihapus

bisa digunakan untuk : Otentifikasi Melacak User Mempertahankan preferensi user, shopping chart dll Data cookie berisi pasangan name/value yang dikirim melalui header dari request HTTP (Post/Get)

Cara Kerja Saat browser meminta page, server dapat mengirim cookies bersamaan dengan page tersebut Jika server sebelumnya sudah mengirimkan cookies, browser akan mengirimkannya bersamaan dengan request

Cara Kerja Saat browser meminta page, server dapat mengirim cookies bersamaan dengan page tersebut Jika server sebelumnya sudah mengirimkan cookies, browser akan mengirimkannya bersamaan dengan request

Serba-Serbi Mitos seperti virus yang bisa menghapus data di komputer kita (salah) bisa mencuri informasi kita (salah) digunakan untuk spam (salah) Fakta hanyalah data biasanya anonim (tidak berisi informasi personal) bisa digunakan untuk melacak kebiasaan kita dalam melihat suatu situs

Serba-Serbi Apakah cookie berbahaya? Pada dasarnya tidak Namun, cookie dapat digunakan untuk menyimpan informasi tentang pengguna tanpa disadari oleh pengguna tersebut Dengan kata lain, cookie dapat Digunakan sebagai media untuk memata- matai aktivitas pengguna, misalnya seberapa sering pengguna mengakses, kapan waktu aksesnya, link apa saja yang di- klik, dsb Untuk alasan tertentu, kita dapat mengaktifkan atau me-non-aftifkan penggunaan cookie pada web browser yang kita gunakan

Serba-Serbi Jika cookie terpaksa digunakan untuk menyimpan data yang bersifat personal (misal : alamat email, nomor telepon, dsb), gunakan enkripsi untuk melindungi data tersebut dari pihak yang tidak berwenang

Jenis cookies : tipe default, cookie sementara yang hanya disimpan di memory browser Ketika browser ditutup, cookies ini akan terhapus Tidak bisa digunakan untuk melacak informasi yang lama Lebih aman, karena tidak ada program yang bisa mengaksesnya (kecuali browser itu sendiri) Persistent : cookies yang disimpan pada sebuah file yang ada di komputer browser Digunakan untuk informasi yang bisa bertahan lama Berpotensial untuk tidak aman, sebab user / program, bisa membuka file tersebut atau mengubah isi cookies nya

Penyimpanan IE : C:\Documents and Settings\administrator\ Firefox %APPDATA%\Mozilla\Firefox\???.defau lt\cookies.txt Dimana??? adalah karakter acak Chrome : C:\Users\<User Name>\AppData\Local\Google\Chrome \User Data

Pengelolaan Dalam Cookie ditangani dengan superglobal array $_COOKIE Set cookies : Kalau tidak didefinisikan batas timeoutnya, maka secara default cookies akan dianggap session cookies

Pengelolaan Menerima informasi cookies : Gunakan isset untuk mengetahui apakah cookies yang diinginkan ada

Pengelolaan - Warning Biasanya dalam pengelolaan cookies dalam sering ditemui masalah atau peringatan yang bunyinya : Warning: Cannot modify header information - headers already sent by... Peringatan ini muncul karena kita memunculkan dua elemen program "header" dalam satu halaman yang diload oleh web browser Dengan kata lain, data cookie yang kita buat untuk memodifikasi elemen header HTML dikirim setelah dokumen HTML diload oleh browser karena pada dasarnya semua dokumen HTML yang sudah diload oleh browser sudah memiliki header

Pengelolaan - Warning Solusinya : Selalu letakkan proses pembuatan cookie sebelum tag <html> atau bahkan sebelum tag <doctype>

Pengelolaan Selain menggunakan, cookies dapat dibentuk dengan menggunakan Javascript karena pada dasarnya cookies disimpan di browser, sehingga Javascript dapat memanipulasinya <script> document.cookie= [name]=[value]"; </script> <script> document.cookie="username=john Doe; expires=thu, 18 Dec 2013 12:00:00 UTC"; </script> <script> var x = document.cookie; </script>

adalah konsep abstrak yang merepresentasikan interaksi antara browser dan server Beda session dan cookies adalah data yang disimpan di client Data session disimpan di server (1 session per user) biasanya dibangun diatas cookies Setiap permintaan page, client mengirim cookie yang berisi session ID, dan server menggunakan session ID ini untuk mencari dan menerima data session -nya Data session ID ini bisa disimpan oleh browser dalam bentuk cookie

merupakan kombinasi dari clientside session ID + server-side session data Client-side session ID dapat berupa parameter URL, cookie, atau HTTP request header Cara yang paling umum adalah menggunakan cookie untuk menyimpan client-side session ID Server-side session data dapat disimpan pada file maupun basis data dapat digunakan untuk menyimpan data berukuran sangat besar, sedangkan cookie hanya dapat menyimpan data berukuran kecil (karena dibatasi oleh web browser)

Cara Kerja Pertama-tama browser melakukan request ke server Server mengetahui IP client, kemudian memberikan data session yang akan dikirim lagi ke client dalam bentuk session ID Untuk interaksi selanjutnya client mengirim session ID tersebut ke server Server menggunakan session ID ini untuk mendapatkan data client yang disimpan di database server

Memulai session Pengelolaan Memberi nilai pada variabel session Membaca nilai dari variabel session

Pengelolaan Menghapus sebuah variabel session Menghapus semua session pada pengguna tertentu

Pengelolaan - Start session_start() menandakan server menginginkan untuk memulai sesi dengan user perintah ini harus di jalankan di awal sebelum output diproduksi Ketika kita memanggil session_start() maka: Jika server tidak pernah berinteraksi dengan user, maka akan dibuat session baru Jika user sudah pernah berintaksi, maka data session akan di simpan di assosiative array $_SESSION Kita dapat menyimpan data di $_SESSION dan menerimanya kembali untuk digunakan lagi nantinya

Pengelolaan - Saving Pada client, session disimpan sebagai cookies dengan nama SESSID Pada server, data session disimpan sebagai file temporary dengan nama acak seperti /tmp/sess_fcc17f071 Kita bisa mencari atau mengubah folder dimana session disimpan dengan menggunakan fungsi session_save_path Untuk aplikasi yang besar, session bisa disimpan di database (misalnya mysql)

Timeout Karena HTTP adalah stateless, maka akan sulit untuk menentukan apakah user sudah menyelesaikan sessionnya Idealnya, user harus melakukan logout untuk menyelesaikan session, tetapi kebanyakan user jarang melakukannya Browser akan secara otomatis menghapus session ketika ditutup Server secara otomatis akan menghapus session setelah beberapa waktu tertentu ( bisa diset melalui setting session_cache_expire ) bisa dihapus secara paksa dengan perintah session_destroy (biasanya dilakukan saat user logout)

Terimakasih dan Semoga Bermanfaat ^^