1. Tujuan
Setelah praktikum ini diharapkan mampu mengetahui penanganan client state menggunakan PHP.
2. Tools
Text editor, Apache HTTP server, PHP
3. Landasan Teori
HTTP merupakan stateless protocol, artinya sekali client mengirim request dan menerima response, saat itu juga koneksi dengan web server berakhir. Oleh karena itu, perlu sesuatu untuk menjaga kondisi client (client state), misalnya supaya tetap berstatus 'authorized user', supaya ketika berbelanja online kondisi shopping cart tidak berubah, dsb. PHP mendukung cookie dan session untuk menangani client state yang akan dibahas pada praktikum ini.
Cookies merupakan mekanisme untuk menyimpan data pada remote browser dan juga bisa dimanfaatkan untuk mengidentifikasi state pada client. Cookies merupakan bagian dari HTTP header, jadi fungsi untuk men-set Cookie harus dipanggil sebelum ada output pada browser.
Session memungkinkan client untuk menyimpan informasi pada server. Namun, informasi session ini bersifat temporer, sehingga biasanya server akan menghapus session ketika user telah meninggalkan website yang menggunakan session.
4.1.Cookie
4.1.1. Cookie dasar
Jalankan get_cookie.php ? set_cookie.php ? get_cookie.php
4.1.3.Simple Cart
Program berikut menunjukkan shopping cart sederhana menggunakan cookies
Apa kesimpulan anda?bagaimana men-set cookie? Bagaimana mendapatkan kembali cookie? Pahami, jangan melanjutkan praktikum sebelum paham!
4.1.2. Array Of Cookie
Cookie dapat ditempatkan dalam array seperti halnya dalam program berikut :
4.1.3.Simple Cart
Program berikut menunjukkan shopping cart sederhana menggunakan cookies
4.2.Session
4.2.1.Session Dasar
Dalam PHP, session merupakan associative array dan setiap kali dimulai pertama kali, akan mempunyai ID. Pada praktikum ini, jalankan masing-masing program secara berurutan : session_basic.php ? session_basic_check.php ? session_unset.php ? session_basic_check.php
Setelah praktikum ini diharapkan mampu mengetahui penanganan client state menggunakan PHP.
2. Tools
Text editor, Apache HTTP server, PHP
3. Landasan Teori
HTTP merupakan stateless protocol, artinya sekali client mengirim request dan menerima response, saat itu juga koneksi dengan web server berakhir. Oleh karena itu, perlu sesuatu untuk menjaga kondisi client (client state), misalnya supaya tetap berstatus 'authorized user', supaya ketika berbelanja online kondisi shopping cart tidak berubah, dsb. PHP mendukung cookie dan session untuk menangani client state yang akan dibahas pada praktikum ini.
Cookies merupakan mekanisme untuk menyimpan data pada remote browser dan juga bisa dimanfaatkan untuk mengidentifikasi state pada client. Cookies merupakan bagian dari HTTP header, jadi fungsi untuk men-set Cookie harus dipanggil sebelum ada output pada browser.
Session memungkinkan client untuk menyimpan informasi pada server. Namun, informasi session ini bersifat temporer, sehingga biasanya server akan menghapus session ketika user telah meninggalkan website yang menggunakan session.
4.1.Cookie
4.1.1. Cookie dasar
Jalankan get_cookie.php ? set_cookie.php ? get_cookie.php
<?php /* * File : get_cookie.php * Deskripsi : File untuk mendapatkan cookie yang sudah di-set */ if(isset ($_COOKIE['name'])) { print "hello ".$_COOKIE['name']; }else { print "your cookie has not been set!"; } ?> |
<?php /* * File : set_cookie.php *Deskripsi : File untuk men-set cookie */ $myname = "panji"; setcookie("name", $myname); print "cookie already set!"; ?> |
4.1.3.Simple Cart
Program berikut menunjukkan shopping cart sederhana menggunakan cookies
Apa kesimpulan anda?bagaimana men-set cookie? Bagaimana mendapatkan kembali cookie? Pahami, jangan melanjutkan praktikum sebelum paham!
4.1.2. Array Of Cookie
Cookie dapat ditempatkan dalam array seperti halnya dalam program berikut :
<?php /* * File :array_cookie.php * Deskripsi : Program untuk menempatkan cookie pada array */ setcookie("cookie[three]", "cookie three"); setcookie("cookie[two]", "cookie two"); setcookie("cookie[one]", "cookie one"); //reload page untuk mendapatkan output if (isset($_COOKIE['cookie'])) { foreach ($_COOKIE['cookie'] as $name => $value) { echo "$name : $value <br />\n"; } } ?> |
4.1.3.Simple Cart
Program berikut menunjukkan shopping cart sederhana menggunakan cookies
<!-- File : order_form.php ---> <html> <head> <title>Order Form</title> </head> <body> <form action="order_process.php" method="POST"> <p> Order CD, amount : <input type="text" name="cd_order" value="0" size="2" maxlength="2" /> </p> <p> Order DVD, amount : <input type="text" name="dvd_order" value="0" size="2" maxlength="2" /> </p> <input type="submit" value="Add To Cart" name="submit" /> </form> </body> </html> |
<?php /* * File : order_proses.php * Deskripsi : form untuk pemrosesan pesanan */ if(isset ($_POST['cd_order']) && isset ($_POST['dvd_order'])){ setcookie("cd_order",$_POST['cd_order']); setcookie("dvd_order",$_POST['dvd_order']); header("Location: order_summary.php"); } ?> |
<html> <head> <title>Order Form</title> </head> <body> <p><u>Order Summary</u></p> <?php /* * File : order_summary.php * Deskripsi : program untuk menampilkan semua order */ $num_cd_order = $_COOKIE['cd_order']; $num_dvd_order = $_COOKIE['dvd_order']; echo "Ordered CD : ".$num_cd_order." pieces <br />"; echo "Ordered DVD : ".$num_dvd_order." pieces <br />"; ?> </body> </html> |
4.2.Session
4.2.1.Session Dasar
Dalam PHP, session merupakan associative array dan setiap kali dimulai pertama kali, akan mempunyai ID. Pada praktikum ini, jalankan masing-masing program secara berurutan : session_basic.php ? session_basic_check.php ? session_unset.php ? session_basic_check.php
<?php /* * File : session_basic.php * Deskripsi : Program untuk mengenalkan PHP session */ //creates a session or resumes the current one based on a session identifier session_start(); //get the session ID echo "session ID : ".session_id()."<br />"; //store and receive session data $_SESSION['views'] = 1; echo "Pageviews = ". $_SESSION['views']; ?> |
<?php /* * File : session_basic_check.php * Deskripsi : check session dengan identifier 'views' */ session_start(); if(isset($_SESSION['views'])) echo "session was already set <br />"; else{ echo "session was not set and now is set"; $_SESSION['views'] = 1; } echo "views = ". $_SESSION['views']; ?> |
<?php /* * File : session_unset.php * Deskripsi : program untuk meng-hancurkan session */ session_start(); if(isset($_SESSION['views'])){ unset($_SESSION['views']); //you can use session_destroy() as well } if(!isset($_SESSION['views'])){ echo "No more page views ...."; } ?> |
0 komentar:
Posting Komentar