Perangkat Lunak Pengembangan Web Pertemuan 4 Dasar Pemrograman PHP III Program Diploma IPB - Aditya Wicaksono, SKomp 1
fopen() <html> <body> <?PHP $file = fopen("welcome.txt", "r") or exit("unable to open file!"); </body> </html> Digunakan untuk membuka file Parameter pertama dari fungi ini berisi nama file yang akan dibuka Parameter kedua menentukan modus file Jika fungsi fopen() tidak dapat membuka file yang ditentukan, ia akan mengembalikan 0 (false) Program Diploma IPB - Aditya Wicaksono, SKomp 2
Mode File Mode Deskripsi r Read only. Dimulai pada awal file r+ Read/Write. Dimulai pada awal file w Write only. Membuka dan membersihkan isi file; atau membuat file baru jika tidak ada w+ Read/Write. Membuka dan membersihkan isi file; atau membuat file baru jika tidak ada a Append. Membuka dan menulis ke akhir file atau membuat file baru jika tidak ada a+ Read/Append. Mempertahankan isi file dengan menulis ke akhir file x Write only. Membuat file baru. Returns FALSE dan error jika file sudah ada x+ Read/Write. Membuat file baru. Returns FALSE dan error jika file sudah ada Program Diploma IPB - Aditya Wicaksono, SKomp 3
fclose() <?PHP $file = fopen("test.txt", "r"); //some code to be executed fclose($file); Digunakan untuk menutup file yang terbuka Program Diploma IPB - Aditya Wicaksono, SKomp 4
feof() if (feof($file)) echo "End of file"; Memeriksa apakah end-of-file (EOF) telah tercapai Berguna untuk perulangan melalui data yang panjangnya tidak diketahui Tidak dapat membaca file yang dibuka dengan modus w, a, dan x Program Diploma IPB - Aditya Wicaksono, SKomp 5
fgets() <?PHP $file = fopen("welcome.txt", "r") or exit("unable to open file!"); //Output a line of the file until the end is reached while(!feof($file)) { echo fgets($file). "<br>"; } fclose($file); Digunakan untuk membaca file baris per baris Setiap fungsi dipanggil, pointer akan pindah ke baris berikutnya Program Diploma IPB - Aditya Wicaksono, SKomp 6
fgetch() <?PHP $file = fopen("welcome.txt", "r") or exit("unable to open file!"); while (!feof($file)) { echo fgetc($file); } fclose($file); Digunakan untuk membaca file karakter per karakter Setiap fungsi dipanggil, pointer akan pindah ke karakter berikutnya Program Diploma IPB - Aditya Wicaksono, SKomp 7
Upload File Form <html> <body> <form action="upload_file.php" method="post" enctype="multipart/form-data"> <label for="file">filename:</label> <input type="file" name="file" id="file"><br> <input type="submit" name="submit" value="submit"> </form> Memungkinkan user untuk meng-upload file Memberikan manfaat yang besar, tapi beresiko cukup besar Hanya trusted user yang diperbolehkan untuk meng-upload file </body> </html> Program Diploma IPB - Aditya Wicaksono, SKomp 8
$_FILES <?php if ($_FILES["file"]["error"] > 0) { echo "Error: ". $_FILES["file"]["error"]. "<br>"; } else { echo "Upload: ". $_FILES["file"]["name"]. "<br>"; echo "Type: ". $_FILES["file"]["type"]. "<br>"; echo "Size: ". ($_FILES["file"]["size"] / 1024). " kb<br>"; echo "Stored in: ". $_FILES["file"]["tmp_name"]; } Digunakan untuk meng-upload file dari komputer klien ke server Parameter pertama berupa nama dari form input file Parameter kedua dapat berupa: name, type, size, tmp_name, dan error Program Diploma IPB - Aditya Wicaksono, SKomp 9
Parameter $_FILES Parameter $_FILES["file"]["name"] $_FILES["file"]["type"] $_FILES["file"]["size"] $_FILES["file"]["tmp_name"] $_FILES["file"]["error"] Deskripsi Nama file Tipe file Ukuran file (kilobytes) nama salinan sementara dari file yang tersimpan di server Error code yang dihasilkan pada proses upload Program Diploma IPB - Aditya Wicaksono, SKomp 10
file_exists() if (file_exists("upload/". $_FILES["file"]["name"])) { echo $_FILES["file"]["name"]. " already exists. "; } Memeriksa keberadaan file dalam folder penyimpanan Program Diploma IPB - Aditya Wicaksono, SKomp 11
move_uploaded_file() else { move_uploaded_file($_files["file"]["tmp_n ame"], "upload/". $_FILES["file"]["name"]); echo "Stored in: ". "upload/". $_FILES["file"]["name"]; } Menyimpan file upload dalam folder penyimpanan Program Diploma IPB - Aditya Wicaksono, SKomp 12
Apa itu Cookie? Cookie sering digunakan untuk mengidentifikasi pengguna Cookie adalah file kecil yang ditanam server pada komputer pengguna Harus disimpan SEBELUM tag <html> Nilai cookie secara otomatis akan di URLencode saat dikirim, dan didecode saat diterima Untuk mecegah URLencoding gunakan setrawcookie() sebagai gantinya Program Diploma IPB - Aditya Wicaksono, SKomp 13
setcookie() setcookie(name, value, expire, path, domain); Program Diploma IPB - Aditya Wicaksono, SKomp 14
Contoh Membuat Cookie 1 <?php setcookie("user", Aditya Wicaksono", time()+3600); <html>... Program Diploma IPB - Aditya Wicaksono, SKomp 15
Contoh Membuat Cookie 2 <?php $expire=time()+60*60*24*30; setcookie("user", Aditya Wicaksono", $expire); <html>... Program Diploma IPB - Aditya Wicaksono, SKomp 16
$_COOKIE <?php // Print a cookie echo $_COOKIE["user"]; // A way to view all cookies print_r($_cookie); Digunakan untuk mengambil nilai cookie Program Diploma IPB - Aditya Wicaksono, SKomp 17
Contoh Mengambil Nilai Cookie <html> <body> <?php if (isset($_cookie["user"])) echo "Welcome ". $_COOKIE["user"]. "!<br>"; else echo "Welcome guest!<br>"; Fungsi isset() untuk mengetahui apakah cookie telah dibentuk </body> </html> Program Diploma IPB - Aditya Wicaksono, SKomp 18
Menghapus Cookie <?php // set the expiration date to one hour ago setcookie("user", "", time()-3600); Program Diploma IPB - Aditya Wicaksono, SKomp 19
Variabel Session Menyimpan informasi pengguna pada server untuk berbagai kepentingan seperti: username, item belanja, dll session bersifat temporer, akan dihapus saat pengguna meninggalkan situs web Untuk berbagai kepentingan dapat disimpan dalam database agar bersifat permanen Menciptakan ID unik (UID) untuk setiap visitor dan menyimpan variabel berdasarkan UID UID dapat disimpan dalam cookie ataupun disebar dalam URL Diletakkan SEBELUM tag <html> Program Diploma IPB - Aditya Wicaksono, SKomp 20
session_start() <?php session_start(); <html> <body> </body> </html> Program Diploma IPB - Aditya Wicaksono, SKomp 21
$_SESSION <?php session_start(); // store session data $_SESSION['views']=1; <html> <body> <?php //retrieve session data echo "Pageviews=". $_SESSION['views']; Menyimpan dan mengambil variabel session </body> </html> Program Diploma IPB - Aditya Wicaksono, SKomp 22
unset() <?php session_start(); if(isset($_session['views'])) unset($_session['views']); Digunakan untuk menghapus sebagian data session Program Diploma IPB - Aditya Wicaksono, SKomp 23
session_destroy() <?php session_destroy(); Mereset semua data dan menghapus semua data session yang tersimpan Program Diploma IPB - Aditya Wicaksono, SKomp 24
Terima Kasih Program Diploma IPB - Aditya Wicaksono, SKomp 25