Pemrograman Internet Dasar 2
Bimo Sunarfri Hantono
Pemrograman Internet Dasar 2 Oleh: Bimo Sunarfri Hantono
Created by Bimo Sunarfri Hantono Based on Bimo Sunarfri Hantono, PHP dan MySQL untuk Web, Andi Offset, Yogyakarta, 2002
Aturan penulisan dalam modul ini sintaks sintaks ditulis dengan format seperti ini
kode kode ditulis dengan format seperti ini
Dasar – Dasar MySQL A. Tujuan Praktikum 1. Memahami konsep dasar penggunaan basis data dalam pemrograman internet . 2. Mampu mempraktikkan perintah-perintah dasar yang terkandung pada basis data MySQL. 3. Mampu melakukan manipulasi data dengan perintah-perintah dasar yang ada.
B. Dasar Teori Profil Singkat MySQL SQL adalah bahasa standar yang digunakan untuk mengakses database server. Bahasa ini pada awalnya dikembangkan oleh IBM, namun telah diadopsi dan digunakan sebagai standar industri. Dengan menggunakan SQL, proses akses database menjadi lebih user-friendly dibandingkan dengan menggunakan dBASE atau Clipper yang masih menggunakan perintah-perintah pemrograman. Untuk data yang teramat besar dan kompleks, biasa digunakan Oracle, IBM DB2, PostgreSQL. Sedang untuk alasan kecepatan dan kesederhanaan, tetapi masih mendukung data yang relatif besar, MySQL lah jawabannya. MySQL bisa didapatkan secara gratis di http://www.mysql.com baik untuk keperluan pribadi, maupun komersial. Secara garis besar, MySQL adalah sebuah sistem database. Sistem database MySQL terdiri dari server dan client. Nah, PHP adalah salah satu dari MySQL client. Singkatnya, PHP sebagai client akan melakukan query (baca: permintaan / perintah) ke sebuah MySQL server.
Konsep Dasar Basis Data Dalam konteks bahasa SQL, pada umumnya informasi tersimpan dalam tabel-tabel yang secara logik merupakan struktur dua dimensi yang terdiri atas baris-baris data yang berada dalam satu atau lebih kolom. Baris pada tabel sering disebut sebagai instance dari data, sedangkan kolom sering disebut sebagai attributes atau field. Keseluruhan tabel itu dihimpun dalam satu kesatuan yang disebut database. Perhatikan ilustrasi di bawah ini :
2
Dasar-Dasar MySQL
Tipe Data dalam MySQL Pada dasarnya ada empat grup tipe data yang didukung MySQL, yaitu data numerik, string, waktu dan data selain numerik atau string. Berikut ini adalah beberapa tipe data dalam MySQL yang sering digunakan :
Tipe Data Numerik Pada tipe data ini data yang dapat disimpan hanya data angka (numerik) saja. Dapat disimpan disini baik dalam bentuk angka positif maupun negatif. Tipe data numerik pada MySQL adalah sebagai berikut. Tipe data numerik di MySQL Tipe Data
Jangkauan Signed
Jangkauan Unsigned
Memori
TINYINT
-128 – 127
0 – 255
1 byte
SMALLINT
-32768 – 32767
0 – 65535
2 byte
MEDIUMINT
-8388608 – 8388607
0 – 16777215
3 byte
INT
-2147483648 – 2147483647
0 – 4294967295
4 byte
BIGINT
-9223372036854775808 – 9223372036854775807
0 – 18446744073709551615
8 byte
FLOAT(M,D)
Tergantung nilainya
–
4 byte
DOUBLE(M,D)
Tergantung nilainya
–
8 byte
DECIMAL(M,D)
Tergantung nilainya
–
M+2 byte
Dasar-Dasar MySQL
3
Atribut berikut AUTO_INCREMENT, UNSIGNED dan ZEROFILL hanya ada pada tipe data numerik ini saja. AUTO_INCREMENT memberikan nilai, ke field yang diimbuhi atribut ini, secara otomatis dan nilainya selalu naik 1 angka setelah data sebelumnya. UNSIGNED memberikan tipe data ini hanya nilai positif saja, karena secara default tipe data ini jangkauannya sampai negatif. Sedangkan ZEROFILL berfungsi untuk memberikan imbuhan nilai 0 didepan nilai sepanjang lebar tipe data.
Tipe Data String Pada tipe data ini dapat berisi nilai string (alpanumerik/karakter) dan numerik. Yang jelas nilai numerik disini tidak dapat untuk dilakukan perhitungan sebelum dilakukan konversi. Tipe data string di MySQL Tipe Data
Max Size
Memory
CHAR(X)
255 byte
X byte
VARCHAR(X)
255 byte
X+1 byte
TINYTEXT
255 byte
X+1 byte
TINYBLOB
255 byte
X+2 byte
TEXT
65535 byte
X+2 byte
BLOB
65535 byte
X+2 byte
MEDIUMTEXT
1.6 MB
X+3 byte
MEDIUMBLOB
1.6 MB
X+3 byte
LONGTEXT
4.2 GB
X+4 byte
LONGBLOB
4.2 GB
X+4 byte
Tipe Data Waktu Pada tipe data ini akan menyimpan informasi waktu baik tanggal maupun jam. Walalupun data yang disimpan disini adalah numerik tapi pembacaan terhadap data adalah string. Jadi perlu di lakukan konversi bila ingin melakukan perhitungan. Berikut tipe data waktu yang didukung di MySQL.
4
Dasar-Dasar MySQL
Tipe data date time di MySQL Tipe Data
Format Standard
Zero Value
DATETIME
YYYY-MM-DD HH:MM:SS
0000-00-00 00:00:00
DATE
YYYY-MM-DD
0000-00-00
TIME
HH:MM:SS
00:00:00
YEAR
YYYY
0
TIMESTAMP
YYYYMMDDHHMMSS
0
Tipe Data Lainnya Disini ada tiga macam tipe data selain yang telah disebutkan diatas yaitu ENUM dan SET. Tipe ENUM merupakan tipe data yang menyimpan beberapa pilihan data yang akan disimpan tapi hanya satu pilihan yang boleh disimpan. Sedangkan SET mirip dengan ENUM tapi bisa memilih lebih dari satu pilihan.
Perintah – Perintah Dasar MySQL PERHATIAN Dalam MySQL, perintah ditulis dengan huruf besar sedangkan objek perintah (seperti nama database, nama tabel) ditulis dengan huruf kecil (tanpa karakter [ ] ). Diakhir perintah , jangan lupa membubuhkan karakter titik koma (;).
Manipulasi Database dan Tabel : 1. Menampilkan database yang ada : Perintah ini digunakan untuk menampilkan database yang ada. Sintaksnya adalah : SHOW DATABASES ;
2. Membuat database : Perintah ini digunakan untuk membuat sebuah database. Sintaksnya adalah : CREATE DATABASE [nama_database_anda] ;
3. Mengakses database : Perintah ini digunakan untuk mengakses database yang Anda pilih. Sintaksnya adalah : USE [nama_database_anda] ;
4. Menghapus (drop) database : Perintah ini digunakan untuk menghapus database dan seluruh tabel yang ada di da-
Dasar-Dasar MySQL
lamnya (termasuk data yang ada di dalam tabel). Sebaiknya Anda berhati-hati dan tidak menggunakan perintah ini, kecuali Anda ingin mengganti database Anda dengan database dan tabel baru. Sintaksnya adalah : DROP DATABASE [nama_database_anda] ;
5. Menampilkan tabel yang ada dalam database tertentu : Perintah ini digunakan untuk menampilkan tabel-tabel yang ada dalam sebuah database. Sintaksnya adalah : SHOW TABLES ;
6. Melihat struktur tabel : Perintah ini digunakan untuk melihat struktur tabel yang Anda inginkan. Sintaksnya adalah : DESC [nama_tabel_anda] ;
7. Membuat tabel : Perintah ini digunakan untuk membuat satu tabel baru. Sintaksnya adalah : CREATE TABLE [nama_tabel_anda] ( [nama_field1][tipe_data1], [nama_field2][tipe_data2], . . . ) ;
8. Menghapus tabel : Perintah ini digunakan untuk menghapus satu tabel beserta data-data di dalamnya. Sebagaimana perintah untuk menghapus database, sebaiknya Anda berhati-hati menggunakan perintah ini. Sintaksnya adalah : DROP TABLE [nama_tabel_anda] ;
Manipulasi Data Tabel : 1. Memasukkan data : Perintah ini digunakan untuk memasukkan data dalam tabel yang kita inginkan. Sintaksnya adalah : INSERT INTO [nama_tabel_anda] VALUES ( [nilai_field1], [nilai_field2], [nilai_field3], ... );
5
6
Dasar-Dasar MySQL
PERHATIAN Apabila field pertama (field 1) Anda mempunyai atribut auto_increement, maka untuk perintah insert tidak perlu dimasukkan nilainya. Field pertama tersebut secara otomatis akan memberikan nilai baru setiap kali Anda mengisikan sebuah instance/record (baris data) pada tabel Anda. 2. Menampilkan isi tabel (menampilkan data) : Perintah ini digunakan untuk menampilkan isi tabel. Perintah ini merupakan perintah dasar yang sangat penting , serta mempunyai banyak variasi, dengan tujuan untuk menampilkan data sesuai dengan kebutuhan kita. Sintaks dasarnya adalah : SELECT [nama_field1], [nama_field2], .... FROM [nama_tabel_anda] ;
Adapun beberapa variasi dari sintaks ini adalah : Perintah SELECT
Keterangan
SELECT * FROM [nama_tabel_anda]
Menampilkan seluruh field pada tabel Anda
SELECT * FROM [nama_tabel_anda] WHERE ID = 1
Menampilkan seluruh data (record) pada tabel yang memiliki id = 1
SELECT * FROM [nama_tabel_anda] ORDER BY [na-
Menampilkan semua field pada tabel dengan urutan nama_field
ma_field] SELECT COUNT (*) FROM [nama_tabel_anda]
Untuk menghitung jumlah data (record) pada tabel.
SELECT [nama_field1], [nama_field2] FROM [na-
Untuk menampilkan nama_field1 dan nama_field2 dengan kriteria
ma_tabel_anda] WHERE [nama_field2] LIKE ’%
nama_field2 mempunyai karakter tertentu
[karakter_tertentu] ’ 3. Mengubah data : Perintah ini digunakan untuk mengubah isi data (record) pada tabel Anda dengan kriteria tertentu (misalnya Anda ingin mengubah data pada tabel dengan kriteria data tersebut mempunyai nomor id = 2) . Sintaksnya adalah : UPDATE [nama_tabel_anda] SET [nama_field1]=’[nilai_field1_baru]’, [nama_field1]=’[nilai_field1_baru]’, .... WHERE [kriteria] ;
4. Menghapus data : Perintah ini digunakan untuk menghapus data dengan kriteria tertentu. Sintaksnya : DELETE FROM [nama_tabel_anda] WHERE [kriteria] ;
Adapun perintah-perintah lain secara lebih lengkap dapat dilihat di Manual MySQL.
Dasar-Dasar MySQL
7
C. Latihan (Lakukan dengan urut ! ) Latihan 01 : Memulai MySQL Untuk memulai MySQL, aktifkan terlebih dahulu MySQL server. Langkah-langkahnya sebagai berikut : •
Aktifkan MySQL D-NT dari phptriad yang terinstal dalam komputer Anda.
•
Buka command prompt (dari start menu > run > ketikkan ’cmd’ )
•
Masuklah ke direktori C:\apache\mysql\bin dengan cara mengetikkan : cd C:\apache\mysql\bin
pada command prompt Anda •
Ketikkan perintah ’mysql’ (tanpa tanda ’ ’ ).
8
Dasar-Dasar MySQL
•
Kalau perintah yang anda ketikkan benar, akan muncul tampilan di bawah ini :
C:\apache\mysql\bin>mysql Welcome to the MySQL monitor. Commands end with ; or \g. Your MySQL connection id is 1 to server version : 3.23.47-nt Type ’help;’ or ’\h’ for help. Type ’\c’ to clear the buffer. mysql>
•
Untuk keluar dari MySQL server (setelah Anda selesai menggunakannya), ketikkan perintah ’exit’ pada prompt mysql berikut :
mysql>exit ;
PERHATIAN Apabila Anda ingin membuat script PHP bersamaan dengan memanipulasi data pada MySQL, maka Anda harus mengaktifkan pula Apache Web Server Anda. Secara umum, untuk memudahkan pekerjaan Anda, setiap kali Anda mengaktifkan Apache Web Server , aktifkan pula MySQL server Anda.
Latihan 02 : Manipulasi Database dan Tabel Kita akan membuat database data_tamu dengan satu buah tabel di dalamnya , yang akan kita beri nama tabel bukutamu. Adapun struktur tabel bukutamu tersebut sebagai berikut : Kolom / field id
Tipe data int (5) , not null
Keterangan Angka dengan panjang maksimal 5, sebagai primary key, tidak boleh
primary key, auto increment kosong nama
char (40) not null
Teks dengan panjang maksimal 40 karakter, tidak boleh kosong
email
char (255) not null
Teks dengan panjang maksimal 255 karakter, tidak boleh kosong
pesan
text not null
Teks , tidak boleh kosong
Lakukan langkah – langkah di bawah ini : 1. Cek apakah database data_tamu sudah ada dalam repository data MySQL atau belum : SHOW DATABASES ;
2. Jika belum ada,lanjutkan ke langkah 3. Jika sudah ada, maka hapus dahulu database data_tamu : DROP DATABASE data_tamu ;
Dasar-Dasar MySQL
9
3. Buatlah database dengan nama data_tamu : CREATE DATABASE data_tamu ;
4. Gunakan database tersebut untuk membuat tabel : USE data_tamu ;
5. Buatlah tabel dengan perintah di bawah ini : CREATE TABLE bukutamu ( id int(5) not null primary key auto_increment, nama char(40) not null, email char (255) not null , pesan text not null ) ;
6. Lihat struktur tabel Anda , dengan perintah : DESC bukutamu ;
Latihan 03 : Manipulasi Data Tabel Anda kini sudah berhasil membuat sebuah database dalam repository MySQL Anda. Latihan berikut ini akan membimbing Anda untuk melakukan manipulasi data pada tabel yang suda Anda buat pada latihan terdahulu : 1. Masukkan data pada tabel bukutamu Anda : INSERT INTO bukutamu VALUES(‘1’,’Andi Fatahillah’,’
[email protected]’,’Halo...apa kabar ?’);
PERHATIAN MySQL akan memperhatikan betul penulisan query / perintah Anda.Karena itu, lakukan dengan cermat, dan jangan sampai ada jeda / spasi diluar tanda ’ ’ untuk data yang Anda masukkan. 2. Coba tampilkan data yang sudah Anda masukkan dengan perintah : SELECT * FROM bukutamu ;
3. Cobalah untuk mengupdate data Anda dengan perintah berikut ini : UPDATE bukutamu SET email=’
[email protected]’ WHERE id=’1’;
10
Dasar-Dasar MySQL
4. Kemudian Anda jalankan kembali perintah select seperti pada nomor 3 di atas. Perubahan apa yang bisa Anda temukan ? 5. Cobalah untuk menambah data-data lain pada bukutamu Anda. Ingat, nomer id yang Anda masukkan harus urut. 6. Cobalah untuk menghapus salah satu data dalam bukutamu. Gunakan perintah : DELETE FROM bukutamu WHERE id=’1’;
7. Sebelum Anda mengakhiri praktikum, hapuslah terlebih dahulu database Anda dengan perintah berikut : DROP DATABASE data_tamu ;
Administrasi MySQL dengan PHPMyAdmin A. Tujuan Praktikum 1. Memahami konsep dasar penggunaan phpmyadmin sebagai salah satu alat administrasi database MySQL dengan GUI (General User Interface). 2. Mampu melakukan manipulasi data melalui phpmyadmin.
B. Dasar Teori Aplikasi PHP-MySQL untuk pembuatan database tingkat lanjut membutuhkan struktur database dan query (perintah) yang tidak sederhana. Beberapa developer PHP mencoba mengembangkan sebuah aplikasi administrasi MySQL berbasis script PHP yang dapat dijalankan melalui browser. Salah satu aplikasi tersebut adalah phpmyadmin. Paket instalasi phptriad telah menyertakan phpmyadmin. Secara default, phpmyadmin dapat diakses melalui alamat http://localhost/phpmyadmin/ (untuk instalasi phptriad). Pada bab ini akan dijelaskan beberapa hal dasar mengenai phpmyadmin. Pembahasan akan digabung dalam latihan untuk memudahkan pemahaman akan penggunaan phpmyadmin. Pada pembahasan ini, phpmyadmin yang akan digunakan adalah versi 2.2.3 (beberapa versi terbaru sudah dirilis dengan berbagai macam penyempurnaan di dalamnya).
12
Administrasi MySQL dengan PHPMyAdmin
C. Latihan Ikuti langkah-langkah berikut : 1. Jalankan Apache Web Server dan MySQL server Anda. 2. Pada browser Anda, ketikkan http://localhost/phpmyadmin/ (catatan : perubahan lokasi file-file phpmyadmin akan mempengaruhi penulisan url pada browser Anda). Ketika pertama kali tertampil, akan terlihat frame di sebelah kiri yang berisi seluruh database yang ada dalam repository MySQL Anda. Sedangkan frame di sebelah kanan Anda berisi textbox untuk membuat database. 3. Sebagaimana pada perintah MySQL di bab sebelumnya, sebelum Anda membuat database, masukkan terlebih dahulu nama database pada textbox di bawah kalimat Create new database. Buatlah sebuah database dengan nama latihan_1. Setelah itu tekan tombol create. PERHATIAN Ingat, MySQL sangat memperhatikan penulisan query Anda (case sensitive). Nama database yang Anda buat tidak boleh sama dengan nama database yang sudah ada. 4. Perhatikan gambar di bawah ini :
Tampilan di atas akan muncul setelah Anda menekan tombol create. Adapun keterangannya sebagai berikut :
Administrasi MySQL dengan PHPMyAdmin
13
Angka 1 : Jendela Query. Apabila sudah terdapat query untuk membuat tabel, maka dapat di-paste pada bagian ini (query ini berupa perintah-perintah MySQL, sebagaimana dijelaskan pada bab sebelumnya).Untuk mengeksekusi query , tekan tombol Go. Apabila query tidak valid atau salah, secara otomatis akan mendapat warning. Angka 2 : Browse File yang di dalamnya terdapat perintah MySQL. Sebuah file yang didalamnya terkandung sintaks untuk membuat tabel atau jenis query yang lain dapat di-browse pada bagian ini. Setelah itu klik Go. Angka 3 : Textbox untuk membuat tabel. Bagian yang terakhir ini digunakan untuk membuat tabel.Setelah database dibuat, Anda dapat membuat tabel secara manual di sini. Textbox inilah yang akan kita gunakan pada latihan kita. 5. Pada kolom textbox untuk membuat tabel, masukkan nama tabel buku_telp (pastikan Anda memasukkan sesuai dengan yang diperintahkan di latihan ini dan jangan mengubah nama tabel Anda!). Setelah itu masukkan jumlah fields-nya. Beri masukkan 3 buah fields.Setelah itu tekan tombol Go. 6. Perhatikan tampilan berikut ini :
Isikanlah masing-masing field yang sudah Anda buat dengan data sebagai berikut : Nama Field
Tipe Data
id
int(10),unsigned,not null, auto increment,primary key
nama
varchar(20),not null
no_telp varchar(15),not null Setelah itu tekan tombol Save.
14
Administrasi MySQL dengan PHPMyAdmin
7. Perhatikan kembali gambar di bawah ini :
Pada tampilan di atas, ada beberapa link-link yang harus diketahui, di antaranya adalah : a. Browse. Digunakan untuk melihat seluruh isi record (data). Hanya bisa di-klik jika tabel Anda sudah terisi dengan data. b. Change. Digunakan untuk mengubah record atau mengganti konfigurasi tabel. c. Drop. Menghapus database, tabel, field, dan record. Tergantung posisi link. d. Primary. Men-set primary key. e. Index. Men-set index. f.
Unique. Men-set unique
g. Empty. Menghapus seluruh record. h. Insert. Mengisi record (data). 8. Cobalah untuk mengisikan data pada tabel Anda. Klik link insert . Kemudian isikan dengan data berikut ini (Anda boleh mengisikan dengan data lain, tidak harus sama dengan yang ada di bawah. Isikan data Anda pada kolom Value. Kosongkan isian Function ) : id
nama
no_telp
1
Indy Barends
4561278
2
Muhammad Farhan
7895623
3
Rudy Sujarwo
5789462
4
Jeffry Al Bukhari
1265478
5
Arifin Ilham
5879456
9. Kini Anda sudah memiliki sebuah database dengan sebuah tabel buku_telp dengan data-data di dalamnya. Jangan hapus database ini. Database ini akan kita gunakan dalam bab selanjutnya.
Konektivitas PHP dan MySQL A. Tujuan Praktikum 1. Memahami konsep dasar modularitas dalam pembuatan script PHP. 2. Memahami konsep koneksi antara PHP dan MySQL 3. Membuat scipt PHP sederhana untuk melakukan manipulasi data MySQL
B. Dasar Teori Konsep Dasar Modularitas File Sebelum membahas konsep koneksi antara PHP dan MySQL, akan dibahas konsep dasar modularitas antar file dalam script PHP. Konsep modularitas antar file ini akan membahas sebuah statemen include yang berfungsi untuk menyertakan isi suatu script yang disimpan dalam file lain. Pernyataan include sangat bermanfaat apabila Anda mempunyai sederetan kode program (misalnya definisi suatu fungsi, definisi konstanta, atau kode program yang lain) yang sering digunakan pada berbagai script PHP yang Anda buat. Dalam hal ini, Anda cukup menuliskan kode tersebut sekali saja ke dalam sebuah file. Lalu, kalau Anda memerlukan kode tersebut, Anda bisa memanggil melalui pernyataan include. Adapun sintaks pernyataan include sebagai berikut : include (nama_file) ;
Dalam hal ini nama_file adalah string yang menyatakan nama berkas yang akan disertakan ke dalam script yang meng-include. Adapun tanda kurung bisa tidak ditulis. Pernyataan include mengasumsikan bahwa berkas eksternal yang akan diproses adalah HTML. Dengan demikian kode yang ada dalam berkas yang di-include akan diperlakukan sebagai kode HTML. Oleh karena itu, jika yang ada dalam berkas tersebut adalah kode PHP, Anda perlu menuliskannya dalam tag .
16
Konektivitas PHP dan MySQL
PERHATIAN Untuk memudahkan penulisan script, usahakan file yang Anda include-kan terletak satu folder dengan file yang menginclude.
Konsep Koneksi PHP dan MySQL PHP sebagai salah satu client MySQL server dapat digunakan untuk melakukan koneksi, antara script-script PHP dan database MySQL.Untuk dapat melakukan koneksi dan menampilkan datadata dalam database menggunakan scipt PHP, ada empat buah tahap yang harus dilakukan. Tahap-tahap tersebut adalah : 1. Melakukan login ke MySQL server. Fungsi PHP pertama yang digunakan untuk melakukan koneksi ke MySQL adalah fungsi mysql_connect( ). Fungsi tersebut mempunyai sintaks lengkap sebagai berikut : mysql_connect(”[host]”,”[username]”,”[password]”) ;
Keterangan : • [host] : diisi dengan nama host / IP Address yang digunakan untuk mengakses MySQL server. Bila MySQL server berjalan pada komputer yang sama dengan script PHP yang akan dieksekusi, isilah dengan string localhost. • [username] : diisi dengan nama user yang mempunyai account MySQL. Nama user disesuaikan dengan nama account yang ada di MySQL server. • [password] : password user tersebut. 2. Memilih database yang akan digunakan. Setelah terhubung ke MySQL, langkah selanjutnya adalah memilih database yang akan digunakan. Fungsi yang akan digunakan adalah mysql_select_db(). Adapun sintaks lengkapnya adalah sebagai berikut : mysql_select_db(”[nama_database]”,”[variabel_koneksi]”) ;
Keterangan : • [nama_database] : diisi dengan nama database yang akan digunakan. • [variabel_koneksi] : variabel yang digunakan untuk melakukan koneksi ke MySQL. Sebagai contoh, untuk script berikut :
Konektivitas PHP dan MySQL
$koneksi=mysql_connect(”localhost”,”otong”,”rahasia”) ;
• variabel koneksinya adalah $koneksi. 3. Melakukan query. Syarat utama untuk melakukan koneksi dengan MySQL server sudah terpenuhi bila Anda sudah membuat file PHP dengan menyertakan dua buah fungsi PHP di atas. Fungsi yang ketiga adalah fungsi untuk melakukan query (request) ke MySQL server. Fungsi yang digunakan adalah mysql_query( ). Adapun sintaks lengkapnya adalah sebagai berikut : mysql_query(”[query]”,”[variabel_koneksi]”) ;
Keterangan : • [query] : diisi dengan query yang akan dilakukan ke MySQL server.Sebagai contoh, Anda dapat menggunakan perintah MySQL berikut untuk melakukan query, seperti: select (memilih kolom / field pada database), insert (memasukkan record/data ke database), update (mengganti / mengedit salah satu record), delete (menghapus record). • [variabel_koneksi] : variabel yang digunakan untuk melakukan koneksi ke MySQL. 4. Menampilkan query. Untuk menampilkan data yang sudah Anda request, PHP menyediakan beragam fungsi. Beberapa diantaranya adalah • mysql_fetch_row(”[variabel_query]”), Fungsi ini menghasilkan suatu array yang berisi seluruh kolom dari sebuah baris pada suatu himpunan hasil. Fungsi ini mempunyai sifat membaca baris berikutnya dalam suatu himpunan hasil. Bila tidak ada baris lagi, fungsi ini akan memberikan nilai balik Dalam hal ini, [variabel_query] adalah sebuah variabel yang digunakan untuk menyimpan hasil query yang dilakukan sebelumnya. Dalam latihan, Kita akan menggunakan fungsi ini. • mysql_fetch_array(”[variabel_query]”). Fungsi ini mempunyai kegunaan serupa dengan mysql_fetch_row. Hanya saja setiap kolom / field akan disimpan dua kali pada array hasil. Yang pertama memiliki indeks angka (dimulai dari nol) dan yang kedua ber-indeks-kan nama kolom.
17
18
Konektivitas PHP dan MySQL
• mysql_fetch_field(”[variabel_query]”,”[nomor_kolom]”), Fungsi ini digunakan untuk memperoleh informasi suatu kolom / field. Pada sintaks fungsi ini, [nomor_kolom] diisi dengan nomor field yang informasinya akan didapatkan. Penomoran kolom dimulai dari nol.
C. Latihan PERHATIAN File-file dalam latihan ini akan Anda gunakan pula dalam bab selanjutnya. Karena itu pastikan Anda mengerjakan semua latihan pada bab ini !
Latihan 01 : mysql_connect.php Sebelum melangkah ke latihan ini, buatlah folder dengan nama latihan_bab9. Letakkan file-file latihan pada bab 9 ini pada folder yang Anda buat. Untuk latihan pada bab 10 dan bab 11 nanti, buatlah folder yang berbeda. Pada latihan yang pertama, kita akan mencoba membuat sebuah file yang akan mengkoneksikan php dengan database MySQL. Database yang akan kita gunakan adalah database latihan_1 yang pada pertemuan sebelumnya sudah dibuat. File ini akan kita beri nama dengan nama mysql_connect.php
//nama host Anda //nama user MySQL yang digunakan //password user, defaultnya kosong //nama database Anda
// koneksi dengan server basis data mysql $link = mysql_connect ($host,$user,$password); // memilih basis data yang akan digunakan mysql_select_db ($db, $link); ?>
Sebagaimana yang Anda lihat, file di atas berisi konfigurasi variabel koneksi berupa nama host Anda, nama user, nama password, serta nama database yang Anda gunakan. Isikan nilai pada
Konektivitas PHP dan MySQL
19
variabel tersebut, sesuai dengan kondisi MySQL server Anda. Ingat, kesalahan dalam konfigurasi akan menghentikan koneksi ke MySQL server.
Latihan 02 : index.php File di bawah ini adalah file tampilan awal untuk aplikasi Anda. Berikan nama dengan nama : index.php. Dalam pemrograman php, ketika Anda membuka folder dari browser Anda, file yang pertama kali dieksekusi oleh browser adalah file index ini. Karena itu, nama file ini adalah nama baku yang digunakan supaya aplikasi Anda dapat langsung dijalankan begitu Anda membuka folder latihan Anda.
Praktikum PHP-Mysql Selamat datang di praktikum PHP-Mysql. Silahkan klik menu yang anda inginkan. insert data
delete data
update data
list data
search data
Latihan 03 : list.php Nama file ini adalah list.php. File ini digunakan untuk memuculkan data-data yang ada dalam database Anda. Perhatikan cara menyisipkan file mysql_connect.php dalam file ini. Perhatikan pula cara menampilkan file-file dalam tabel buku_telp yang pada latihan lalu sudah Anda buat. Ingatkah Anda dengan langkah-langkah koneksi php dan MySQL ? Ya, inilah penerapan dari langkah-langkah tersebut :
20
Konektivitas PHP dan MySQL
1. Melakukan login ke MySQL server (menggunakan user dan password). 2. Memilih database yang akan digunakan. 3. Melakukan query. 4. Menampilkan query.
tampil data Pilih Data yang akan di hapus atau di edit.
Untuk melihat detail data, silahkan klik pada data.
$row[1]
"; } ?>
hapus data update data depan
Latihan 04 : detail.php Ini adalah file terakhir yang akan kita buat dalam latihan ini. Beri nama dengan nama detail.php. Perhatikan jenis query pada file ini ! File ini menggunakan perintah SELECT dengan variasi perin-
Konektivitas PHP dan MySQL
21
tah menggunakan opsi WHERE. Dengan query tersebut, script php akan menampilkan isi database dengan opsi sesuai dengan yang disebutkan (dalam file ini, akan ditampilkan isi dari database dengan id = [yang_dipilih_user] ).
detail data Detail Data
No ID : $row[0]
\n"; echo"
Nama : $row[1]
\n"; echo"
No Telepon :$row[2]
\n"; ?>
kembali
Tugas : Buatlah file untuk menampilkan list database dan detail database sebagaimana di atas, dengan menggunakan perintah mysql_fetch_array untuk menampilkan hasil query file php ke MySQL server ! l
Manipulasi Database I A. Tujuan Praktikum 1. Memahami konsep dasar manipulasi database dengan perintah INSERT dan DELETE untuk memasukkan dan menghapus data. 2.
Mampu mengimplementasikan konsep manipulasi database pada scipt-script PHP.
B. Dasar Teori Manipulasi database selama ini kita kenal melalui perintah-perintah MySQL yang kita eksekusi melalui prompt MySQL ataupun melalui tampilan GUI untuk administrasi MySQL seperti phpmyadmin. Dalam bab ini, kita akan membahas cara memanipulasi database dengan menyisipkan perintah-perintah MySQL pada script php. Sekedar mengingat kembali, perintah MySQL untuk memasukkan data / record dalam tabel database adalah sebagai berikut ; INSERT INTO [nama_tabel_anda] VALUES ( [nilai_field1], [nilai_field2], [nilai_field3], ... );
Sedangkan perintah untuk menghapus record dalam tabel adalah sebagai berikut : DELETE FROM [nama_tabel_anda] WHERE [kriteria] ;
Yang penting kita ketahui, apabila kita membuat aplikasi untuk memasukkan record pada database, maka kita perlu membuat sebuah file php yang berisi form dan properti masukan seperti textbox dan tombol submit. Oleh karena itu, minimal ada dua buah file untuk menambahkan record ke dalam database, file pertama untuk memasukkan data dan file yang kedua untuk mengeksekusi query ke MySQL server. Untuk menghapus data, minimal harus ada satu file yang digunakan untuk menghapus data. Namun dalam latihan ini, operasi penghapusan data akan kita lakukan dengan menggunakan dua buah file, dengan harapan kita bisa menghapus data lebih dari sebuah data dalam sekali operasi penghapusan.
24
Manipulasi Database I
C. Latihan PERHATIAN Sebelum memulai latihan, buatlah folder latihan_bab10. Kemudian, kopikan file Anda pada folder latihan_bab9 ke folder latihan_bab10. Kerjakan semua latihan di bawah dan amatilah proses-proses manipulasi data dengan script php yang Anda buat.
Latihan 01 : index.php Buka kembali file index Anda. Tambahkan pada file tersebut link untuk memasukkan data dan menghapus data, sehingga file index Anda akan terlihat sebagaimana di bawah ini :
Praktikum PHP-Mysql Selamat datang di praktikum PHP-Mysql. Silahkan klik menu yang anda inginkan. insert data
delete data
update data
list data
search data
Latihan 02 : add_form.php File ini digunakan untuk memasukkan data menggunakan form dan properti masukan / input :
form entry data Form Entry Data
Depan