Pemrograman Web Lanjut 2017

dokumen-dokumen yang mirip
MODUL PEMROGRAMAN WEB

Pemrograman Web Lanjut 2017

Pemrograman Web Lanjut 2017

MODUL PEMROGRAMAN WEB

1. TUJUAN Mahasiswa dapat memahami langkah-langkah koneksi PHP dengan MySQL Mahasiswa dapat memahami pengambilan record dari database

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

Pemrograman Web Lanjut 2017

E-trik Ajax. Database MySQL. Dedi Alnas

MODUL 5 KONEKTIVITAS PHP DENGAN MySQL

Materi 10: Create Read Update Delete

Membuat Database mysql dengan PhpMyAdmin

MODUL 6 SESSION DAN USER AUTHENTICATION

MODUL 7 SESSION DAN USER AUTHENTICATION

PHP + MySQL M. RUDYANTO ARIEF, MT

MODUL 10 KONEKTIVITAS PHP DENGAN MySQL

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

Script PHP dan MySQL J A M K E E M P A T

Pemrograman Web Lanjut 2017

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

MODUL 11 MEMBUAT LOGIN USER

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

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

LAPORAN PRAKTIKUM 5 SESSION & COOKIE

MODUL 1. KONEKTIVITAS PHP DENGAN MySQL. Digunakan untuk melakukan uji dan koneksi kepada server database MySQL.

Lisensi Dokumen: Uraian Kasus :

Pemrograman Web Lanjut 2017

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

Membuat Halaman Login Dengan PHP

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

Menangani Input dari User

Praktikum 3 Cookie, Session, dan Database MySQL

MODUL 7 CRUD (CREATE, READ, UPDATE,DELETE) dibawah ini adalah fungsi PHP yang akan digunakan untuk pembuatan CRUD

BAB X AKSES DAN MANIPULASI DATA

Membuat Login Dengan PHP dan MYSQL

DATABASE MYSQL DENGAN PHP

Nama : Maya Masyita K Nst NIM : Tugas : I ( Database berbasis Web ) Fungsi PHP-MySQL

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

PHP & MYSQL. Ingat, PC anda tidak memerlukan tambahan khusus atau apapun untuk melihat hasil eksekusi kode PHP anda. Mengapa?

Modul Pembuatan Aplikasi Login dengan PHP dan MySQL

Mengakses database MySQL melalui PHP

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

P - 12 Bab 9 : PHP & MySQL

Pemrograman Web. Koneksi dan Manipulasi Basis Data. 7 Adam Hendra Brata

BAB IX COOKIE DAN SESSION

Pemrograman Web. Koneksi dan Manipulasi Basis Data. Adam Hendra Brata

MODUL 8 Mengoperasikan Perangkat Lunak Basis Data

BAB VII Database MYSQL

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

Pemrograman Web. Koneksi dan Manipulasi Basis Data. 7 Adam Hendra Brata

Membuat CRUD Sederhana Menggunakan PHP Dengan Mysqli Extension

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

MySQL J A M K E T I G A

Membuat Toko Buku dengan PHP - MySQL

Dasar PHP-MySQL oleh : Prasaja Wikanta

Membangun koneksi dari PHP ke MySQL adalah dengan fungsi mysql_connect();

Integrasi PHP dan MySQL Donny Reza, S.Kom

MODUL VI INTERAKSI DATABASE

BAB IV IMPLEMENTASI DAN PENGUJIAN

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

Modul 5. Membuat Formulir Pada Template. Disusun oleh. Sri Siska Wirdaniyati JURUSAN STATISTIKA FAKULTAS MATEMATIKA DAN ILMU PENGETAHUAN ALAM

Sesi Memahami berbagai ekstensi akses database

WAP (3) Muhammad Zen S. Hadi, ST. MSc. WAP - The Wireless Application Protocol

Pertemuan Ke-13 (PHP & MYSQL) Adi Widodo,S.Kom.,MMSI 1

Koneksi DataBase PHP - MYSQL Nurcahyo Budi Nugroho dan Muhammad Fathoni

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

PENGEMBANGAN APLIKASI SISTEM PENGATURAN BASIS DATA SECARA ONLINE. Agustinus Noertjahyana, Rendy Pangestu dan Dwi Budiman

PHP & Mysql. Pemrograman Internet

Otodidak. MySQL untuk Pemula

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

TIB18 - PEMROGRAMAN WEB. Pemrograman Web Pertemuan & 21-22

MODUL 6 REDIRECT, SESSION & COOKIE

MODUL 6 Redirect,Session, dan Cookies

KEAHLIAN PEMROGAMAN JAVA

Fungsi fungsi tambahan dalam PHP Session dan Cookie

Fungsi-fungsi MySql Fungsi mysql_connect. Bentuk: Membuat hubungan ke database MySQL yang terdapat pada suatu host.

Widhy Hayuhardhika NP, S.Kom

Bab 13 Tentang SESSION

Cara Mudah Koneksi Php Dan Mysql Dengan Database

PEMROGRAMAN BERBASIS WEB (CCP119)

MODUL 7 MEMBUAT DATABASE DI MYSQL

MODUL 8 Insert, Update, & delete

BAB IV HASIL DAN UJI COBA

kegiatan-kegiatan yang saling berkaitan dan prosedur-prosedur yang saling berhubungan untuk melaksanakan dan mempermudah kegiatan-kegiatan utama

Materi

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

PERINTAH SQL DAN INTERKONEKSI PHP-MySQL

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

PHP SESSION & COOKIES

MODUL PRAKTIKUM BASIS DATA TEKNIK INFORMATIKA UIN SUNAN KALIJAGA YOGYAKARTA 2011 PENGENALAN DATABASE MYSQL

Perangkat Lunak Pengembangan Web

BAB II LANDASAN TEORI

BAB XIII BEKERJA DENGAN SESSION

MAKALAH JARINGAN KOMPUTER Session Model OSI

MODUL 4 INTERNET PROGRAMMING DATABASE

BAB IV ANALISIS DAN PERANCANGAN PERANGKAT LUNAK

Checkbox dengan Foreach dan MYSQL

MODUL 9 WEB PROGRAMMING : MySQL

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

Session dan Cookie. Fajar Pradana S.ST., M.Eng

Aplikasi Database dengan PHP dan MySQL

Transkripsi:

Pertemuan 8 8.1. PHPMyAdmin Menurut wikipedia, PhpMyAdmin adalah perangkat lunak bebas / open source yang ditulis dalam bahasa pemrograman php yang digunakan untuk menangani administrasi MySQL melalui WWW (World Wide Web). Dengan menggunakan phpmyadmin, anda dapat membuat database, membuat tabel, menginsert, menghapus dan mengupdate data dengan GUI dan terasa lebih mudah, tanpa perlu mengetikkan perintah SQL secara manual. 6.1.1 Primary Key Primary Key adalah field kunci/utama dari sebuah tabel yang menunjukkan bahwa field tersebut tidak bisa diisi dengan data yang sama. Dapat dikatakan juga bahwa primary key menjadikan tiap record memiliki identitas sendiri-sendiri yang membedakan satu dengan lainnya (unik). Primary key akan berguna ketika menampilkan record hasil pencarian(searching), pengurutan(sorting), dan berbagai operasi query lainnya. Nilai dari primary key tidak boleh kosong, harus unik (tidak boleh sama), 6.1.2 Foreign Key Foreign Key adalah field pada sebuah tabel yang berfungsi sebagai kuncci tamu dari tabel yang lain. Foreign key sangat berguna ketika bekerja dengan banyak tabel dan tabel tersebut memiliki relasi satu sama lain. Field yang menjadi foreign key di sebuah tabel, harus memiliki penamaan yang sama dengan tabel induknya. 6.1.3 Relasi Antar Tabel Buat sebuah tabel dengan struktur sebagai berikut. (Lanjutkan dari tabel latihan yang telah dibuat pada pertemuan sebelumnya.)

Contoh relasi antar tabel yang lain: 8.2. Koneksi Database PHP memiliki fungsi yang dapat digukanan untuk mengkoneksikan database MySQL. Fungsi tersebut akan berguna dalam proses pembuatan website sehingga data dapat ditampilkan dan dimanipulasi melalui program PHP. Untuk melakukan koneksi terhadap sebuah server basis data, dapat dilakukan dengan langkah-langkah berikut. 1. Koneksi PHP dan MySQL a. mysql_connect() digunakan untuk melakukan uji dan koneksi kepada server database MySQL. Sintaks: mysql_connect($host,$user,$password) Keterangan: $koneksi adalah nama variabel penampung status hasil koneksi kepada database. $host adalah nama host atau alamat server database MySQL. $user adalah nama user yang telah diberi hak untuk dapat mengakses server database. $pass adalah kata sandi untuk username untuk dapat masuk ke dalam database. b. mysql_select_db() digunakan untuk membuat koneksi dengan database yang akan digunakan. Jika mengacu pada pembuatan database sebelumnya, maka database yang akan digunakan adalah databasesekolah. Berikut perintah yang digunakan untuk membuat koneksi dengan database. Sintaks: mysql_select_db($nama_database); Latihan: koneksi.php mysql_connect( localhost, root, )or exit( Gagal koneksi ke database. ); mysql_select_db( sekolah ) or exit( Gagal Memilih Database );

atau $host = localhost ; $user = root ; $pass = ; $dbase = pwl000 ; mysql_connect($host, $user, $pass)or exit( Gagal koneksi ke database. ); mysql_select_db($dbase) or exit( Gagal Memilih Database ); Untuk PHP 5.5 ke atas, bentuk koneksi seperti di atas sudah tidak bisa digunakan. Pernyataan resmi dari PHP mengatakan bahwa The mysql extension is deprecated and will be removed in the future: use mysqli or PDO instead. Bentuk koneksi dengan menggunakan mysqli adalah sebagai berikut. mysqli_connect( hostname, user, password, database_name ); Bentuk di atas jauh lebih sederhana dibanding bentuk sebelumnya. 2. Menampilkan Data Setelah melakukan koneksi terhadap basis data yang akan dioperasikan, selanjutnya kita bisa memulai untuk melakukan manipulasi terhadap data yang terkandung dalam basis data tersebut. Operasi yang akan kita lakukan kali ini adalah menampilkan data. a. mysql_query() atau mysqli_query() Digunakan untuk melakukan eksekusi perintah SQL untuk memanipulasi database yang berhasil dilakukan koneksinya. b. mysql_fetch_array() atau mysqli_fetch_array() Digunakan untuk melakukan pemrosesan hasil query yang dilakukan dengan perintah mysql_query(), dan memasukkannya ke dalam array asosiatif, array numeris atau keduanya. c. mysql_fetch_assoc() atau mysql_fetch_assoc() Fungsi ini hampir sama dengan fungsi mysql_fetch_array(), hanya saja array yang dihasilkan hanya array asosiatif. d. mysql_fetch_row() atau mysql_fetch_row() Fungsi ini hampir sama dengan fungsi mysql_fetch_array(), hanya saja array yang dihasilkan hanya array numeris. e. mysql_num_rows() atau mysql_num_rows() Fungsi ini digunakan untuk menghitung jumlah record yang ada pada database.

Berikut adalah contoh untuk menampilkan data yang berasal dari database. a. Menampilkan Data Tunggal Latihan: berita_tampil.php include( koneksi.php ); $sql = SELECT berita_id, berita_judul, berita_tanggal,berita_isi FROM berita WHERE berita_id=3 ; $hasil = mysqli_query($konek,$sql); $data = mysqli_fetch_assoc($hasil); //data ditampilkan dalam bentuk array dalam bentuk pertama print_r($data); //atau bentuk kedua echo ID :.$data[berita_id]. <br /> ; echo Judul :.$data[berita_judul]. <br /> ; echo Tanggal :.$data[berita_tanggal]. <br /> ; echo Isi Berita :.$data[berita_isi]. <br /> ; Keterangan: Fungsi include bertugas untuk memasukkan file koneksi.php ke dalam file guru_view.php. Tugasnya membuat koneksi ke server database. Query SELECT berita_id,berita_judul,berita_tanggal,berita_isi FROM berita WHERE berita_id=3 disimpan di dalam variabel $sql. Kemudian dijalankan dengan perintah mysqli_query($konek,$sql) yang disimpan di dalam variabel $hasil. Hasil query yang tersimpan di variabel $hasil adalah data mentah yang akan diolah dengan fungsi mysqli_fetch_assoc($hasil) yang berguna untuk mengolah data mentah tersebut ke dalam bentuk array. Selanjutnya disimpan di dalam variabel $data. Selanjutnya adalah perintah untuk menampilkan data. Variabel $data disimpan dalam bentuk array sehingga dapat memanfaatkan fungsi print_r untuk menampilkan struktur array tersebut. Atau dalam bentuk kedua array $data yang ditampilkan merupakan kolom yang sebelumnya didefinisikan pada query (berita_id, berita_judul, berita_tanggal, berita_isi), sehingga untuk menampilkan kita perlu menyebut array dengan index assosiatifnya. b. Menampilkan Data Jamak Untuk menampilkan data yang banyak perlu dideskripsikan perintah mysqli_fetch_assoc($hasil) yang dilakukan secara berulang hingga data yang

diinginkan telah mencukupi atau sampai kondisi dimana data yang dihasilkan dari query telah habis. Oleh sebab itu, perlu sebuah perulangan yang akan menampilkan data yang jumlahnya banyak. Latihan: berita_list_array.php include( koneksi.php ); $sql = SELECT * FROM BERITA ; $hasil = mysqli_query($konek,$sql) or exit( Error query: <b>.$sql. <b> ); $data = mysqli_fetch_assoc($hasil); //data ditampilkan dalam bentuk array dalam bentuk pertama print_r($data); Perhatikan hasil dari perintah di atas. Kemudian bandingkan jika diberikan perulangan while untuk menampilkan list data tersebut. Tambahkan/ganti baris dengan warna font merah dengan perintah berikut, kemudian bandingkan hasilnya. while($data = mysqli_fetch_assoc($hasil)){ print_r($data); } Untuk membuat tampilan dengan bentuk tabel lengkapi script berikut. Penugasan : berita_list.php <html> <head> <title>latihan Tampil Data</title> </head> <body> <h3>daftar Guru</h3> <table width="600px" border="1"> <tr style="background:#ccc"> <th width="10%">id</th> <th width="35%">nama</th> <th>nip</th> </tr> Next code...

include( koneksi.php ); $sql = SELECT * FROM... ;......... dst. </table> </body>

8.3. Cookie dan Session 6.3.1 Cookie Cookie adalah sebuah nilai yang dikirimkan dan ditanamkan server pada komputer client. Biasanya informasi-informasi yang disimpan dalam cookie ini adalah informasi yang berkaitan dengan user.cookie diletakkan di sisi client, sehingga pengguna dapat melihat bahkan memodifikasi dan menghapus cookie tersebut. Hal tersebut seringkali membuat penyimpanan data menggunakan cookie menjadi tidak efektif, apalagi user dapat menonaktifkan penggunaan cookie melalui setting browser yang mengakibatkan penggunaan cookie menjadi sia-sia. Setelah sebuah variabel cookie dideklarasikan, ia akan disimpan di sisi client dan selalu tersedia saat browser mengakses website (selama masa kadaluarsa cookie belum habis). Berdasarkan sifat yang telah di uraikan diatas, cookie dapat digunakan antara lain. 1. Menyimpan nama pengunjung. 2. Merekam daftar barang yang ingin dibeli pengunjung. 3. Menyimpan pilihan-pilihan yang diatur oleh pengunjung. 4. Menciptakan suatu sesi yang memungkinkan seseorang dapat masuk ke halamanhalaman lain tanpa perlu melakukan login kembali. Untuk membuat sebuah cookie PHP telah menyediakan fungsi sebagai berikut. setcookie(name, value, expire); Keterangan: 1. Name, untuk nama cookie. Digunakan sebagai pengenal cookie. 2. Value, berisi nilai yang akan disimpan dalam cookie. 3. Expire, merupakan batas waktu ketika cookie akan terhapus otomatis. Contoh membuat cookie: Latihan: latcookie.php $value= 12 ; setcookie( barang,$value, time()+180); echo Cookie telah dibuat ; Terdapat perintah time() yang menunjukkan lamanya waktu 3 menit(180 detik) Untuk membaca/mengakses cookie: Latihan: latcookie2.php echo Jumlah Barang: ; if(isset($_cookie[ barang ]){ echo $_COOKIE[ barang ]; }

Untuk menghapus nilai cookie gunakan setcookie( ) dengan menyebutkan nama cookie pada argumen pertama dan string kosong pada argumen kedua dan mengisikan nilai dari parameter expire-nya dengan satu jam yang lalu. Cara lain, argumen kedua tidak disebutkan. Latihan:hapuscookie.php setcookie( barang,,time()-180); 6.3.2 Session Session adalah salah satu fasilitas yang ada pada PHP yang digunakan untuk menyimpan data sementara ke dalam variabel (variabel session) sehinga data tadi dapat di akses oleh client selama variabel session tadi tidak dikosongkan atau dihilangkan. Nilai variabel di dalam session di simpan di sisi server (web server).berbeda dengan cookies yang nilai variabelnya disimpan di sisi client (browser). Jadi session relatif lebih aman digunakan untuk menyimpan variabel nilai yang bersifat rahasia seperti username dan password pada saat login. 1. Mengawali Session Untuk menunjukkan bahwa suatu halaman menggunakan session maka pada awal halaman harus ada awal session yaitu dengan session_start ( ) 2. Penggunaan Variabel Session Setelah session dimulai maka variabel session sudah dapat mulai digunakan. Penggunaannya menggunakan format $_SESSION[ nama_variabel ] 3. Menghapus Session Setelah variabel session digunakan, variabel tersebut dapat dihapus. Banyak cara untuk menghapus session di antaranya sebagai berikut: a. $_SESSION[ nama_variabel ] = untuk memberikan atau mengganti nilai dari variabel session menjadi null atau kosong. b. unset ($_SESSION[ nama_variabel ]) untuk menghapus sebuah variabel session. c. session_destroy( ) untuk menghapus semua variabel session yang mungkin ada banyak variabel session yang dibuat. Contoh: latsession1.php session_start(); $_SESSION[ username ]= farida ; echo $_SESSION[ username ]; Contoh: latsession2.php session_start(); echo $_SESSION[ username ];

Pada contoh kedua, meskipun variabel $_SESSION[ password ]tidak dideklarasikan, tetapi masih tetap dapat dikenali dan dioperasikan pada file yang lain dengan melakukan inisialisasi menggunakan fungsi session_start(). 6.3.3 Program Autentikasi Cookie dan session yang telah kita bahas di atas berkaitan erat dengan aplikasi autentikasi. Selanjutnya akan dibahas mengenai session yang dirasa lebih aman dan cocok untuk kasus autentifikasi. Program autentikasi kali ini yang akan dibuat akan terintegrasi dengan database, sehingga nantinya dapat digunakan untuk final projectyang akan dibuat. welcome.php session_start(); if(isset($_session['username'])){ <h2>control Panel</h2> <p>selamat datang " echo $_SESSION['username']; ". Klik <a href="logout.php">disini</a> untuk logout.</p> } else { <h2>maaf..</h2> <p>anda tidak berhak mengakses halaman ini. Silakan <a href="login.php">login</a> terlebih dahulu.</p> } Pada contoh di atas, akan dilakukan pemeriksaan terlebih dahulu apakah seorang user telah terautentikasi melalui fungsi isset($_session[ username ]). Asumsi dari contoh tersebut adalah user telah melakukan login dengan user dan password. Jika belum terautentikasi user akan dibawa ke halaman login. login.php <html> <head> <title>form Login</title> </head> <body> <form action="login_action.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>

login_action.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:welcome.php"); exit(); } else { <h2>maaf..</h2> <p> Username atau password salah. Klik <a href="login.php">disini</a> untuk kembali login. </p> } 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 welcome.php melalui statement header("location:welcome.php");. Penugasan : logout.php (lengkapi script berikut ini)...... dst. <h2>terima Kasih</h2> <p> Anda telah logout dari system. Klik <a href="...">disini</a> untuk kembali login. </p>

Referensi Arief, M. R. 2011. Pemrograman Web Dinamis menggunakan PHP dan MySQL. Yogyakarta: Andi Offset. Hakim, Lukmanul. 2014. Rahasia Inti Master PHP &MySQLi(improved). Yogyakarta, Lokomedia Paranginan, Kasiman. 2012. Aplikasi Web dengan PHP dan MySQL. Yogyakarta: Andi Offset. Raharjo, Budi., dkk. 2014. Modul Pemrograman Web HTML, PHP, & MySQL. Bandung: Modula. Arifin, Oki. 2015. Modul Pemrograman Web Lanjut. STMIK AMIKOM Yogyakarta. Yunmar, Rajif Agung. 2011. Modul Pemrograman Web Lanjut. STMIK AMIKOM Yogyakarta.