Cara Menjalankan PHP dan MySQL menggunakan XAMPP PHP dijalankan dari web server Apache, dan jika anda mengikuti Tutorial PHP Dasar Untuk Pemula di duniailkom, maka di komputer anda telah terinstall aplikasi XAMPP. Untuk tutorial cara menginstall XAMPP, duniailkom telah membuat 2 tutorial lengkap, yakni cara menginstall XAMPP 1.8.3, atau versi yang lebih baru: cara menginstall XAMPP 5.6.3 Selain modul Apache, XAMPP juga memiliki paket bawaanMySQL Server. Untuk menjalankan keduanya, anda tinggal menklik tombol Start pada jendela XAMPP Control Panelseperti gambar
un ia
ilk om .c
om
dibawah ini:
Jika tidak ada masalah, modul MySQL akan berwana hijau yang menandakan MySQL Server sudah
w
w .d
berjalan.
w
Cara Menjalankan MySQL dan PHP secara Terpisah Jika anda telah mengikuti Tutorial MySQL Dasar di duniailkom, pada tutorial tersebut saya menginstall MySQLsecara terpisah (bukan dari aplikasi XAMPP), kita juga bisa menggunakan aplikasi MySQL ini untuk diakses dari web server Apache yang berasal dari aplikasi XAMPP. Namun, seperti yang telah kita bahas pada tutorial cara menjalankan MySQL Server, bahwa di dalam sebuah komputer hanya bisa berjalan 1 buah MySQL Server. Sehingga jika anda menemukan pesan error seperti gambar dibawah ini, berarti ada aplikasi MySQL Server yang sedang aktif.
1
om
Untuk memeriksa apakah MySQL Server sedang aktif atau tidak, bisa dilakukan melalui task
w
w
w
.d
un i
ai lk
om
berarti MySQL Server telah berjalan di latar belakang.
.c
manager. Silahkan bukatask manager,dan cari proses dengan nama: mysqld.exe. Jika ditemukan,
Anda boleh menggunakan MySQL versi stand alone ini, atau mematikannya dan menggunakan MySQL versi bawaanXAMPP.
2
Cara Menguji Koneksi PHP MySQL Dengan Phpmyadmin Untuk menguji apakah aplikasi PHP dapat mengakses database MySQL, kita bisa menggunakan aplikasiPhpmyadmin bawaan XAMPP. Aplikasi Phpmyadmin adalah sebuah aplikasi manajemen database MySQL yang berbasis web. XAMPPmenambahkan aplikasi ini untuk mempermudah pengaksesan database yang biasanya diakses menggunakan console, atau cmd Windows. Namun saya tidak akan membahas cara penggunaan aplikasiphpmyadmin pada tutorial kali ini. Kita hanya menggunakannya untuk mengecek koneksi dari aplikasi PHP ke MySQL. Untuk masuk ke menu phpmyadmin, anda bisa mengetik alamat berikut pada web browser:http://localhost/phpmyadmin/. Atau bisa juga dari halaman localhost XAMPP, lalu cari
w
w
w
.d
un ia
ilk
om
.c
om
menu phpmyadminyang berada pada pojok kiri halaman localhost.
Jika anda menggunakan aplikasi MySQL bawaan XAMPP, dan apabila tidak ada masalah akan tampil halaman awalPhpmyadmin seperti gambar dibawah ini:
3
om
.c
Tampilnya halaman tersebut menandakan bahwa PHP dan MySQL telah terhubung secara
un ia ilk om
sempurna. Namun jika tampilan phpmyadmin seperti gambar berikut ini, maka dapat disimpulkan
w
w
w .d
bahwa MySQL Server belum berjalan.
4
Jika anda mendapati tampilan tersebut, permasalahan terdapat pada aplikasi MySQL Server yang belum dijalankan. Silahkan jalankan aplikasi MySQL dari XAMPP Control Panel. Apabila anda menggunakan aplikasi MySQL yang terpisah (bukan bawaan XAMPP), maka
w
w
w
.d
un
ia
ilk om .c
om
menu phpmyadminseharusnya akan menjadi seperti gambar berikut:
Namun jangan khawatir, pesan error tersebut terjadi karena phpmyadmin mencoba masuk ke MySQL Server dengan user ’root’ dan tanpa password. Pesan error #1045 – Access denied for user ‘root’@’localhost’ (using password: NO)merupakan pesan error ketika kita salah memasukkan password untuk user root. Jika anda mengikuti tutorial MySQL di duniailkom, user root akan memiliki password’qwerty’ dan bukan kosong, sehingga hal inilah yang menyebabkan tampilan error tersebut. Tampilan error diatas sebenarnya berarti MySQL Servertelah berjalan, dan bisa diakses dari PHP.
5
Perkembangan Cara Koneksi PHP dan MySQL PHP merupakan bahasa pemograman yang selalu di update, dan berkembang mengikuti teknologi terbaru. Saat ini, Pemograman Berorientasi Objek (Object Oriented Programming) merupakan trend pemograman PHP, dan hal ini juga mempengaruhi cara mengakses database MySQL dari PHP. PHP memiliki 3 cara pengaksesan MySQL, yakni melaui PDO (PHP Data Objects), mysqli extension dan mysql extension. PDO menggunakan pemograman objek, mysqli extension tersedia dalam bentuk objek dan prosedural(diakses melalui fungsifungsi) sedangkan mysql extensionsepenuhnya menggunakan pemograman prosedural.
1. Koneksi MySQL dengan mysql extension Saat pertama kali mempelajari PHP MySQL sekitar tahun 2008 (atau jika anda pernah mempelajari
om
PHPMySQL beberapa tahun yang lalu), untuk mengakses MySQL dari PHP, kita menggunakan fungsifungsi sepertimysql_connect(), mysql_query(), dan mysql_fetch_array().Fungsifungsi ini
om
.c
tergabung ke dalam mysql extension. Saat itu PDO dan mysqli extension masih jarang digunakan. Namun saat ini, tepatnya mulai PHP versi 5.5.0, PHP memutuskan untuk membuat mysql
ilk
extension berstatusdeprecated. Yang artinya pengaksesan database MySQL menggunakan
un
extension atau PDO yang berbasis objek.
ia
fungsi mysql extension sudah tidak disarankan lagi. Programmer PHP diharapkan pindah kemysqli
Alasannya, MySQL versi terbaru memiliki fiturfitur yang semakin lengkap dan kompleks, sehingga
w .d
PHP memutuskan untuk membuat fungsi extension baru agar programmer PHP bisa menggunakan fiturfitur ini.
w
w
2. Koneksi MySQL dengan mysqli extension Sebagai pengganti mysql extension, PHP menyediakanmysqli extension (mysqli merupakan singkatan dariMySQL Improved). Mysqli extension ini pada dasarnya adalah perbaikan dari mysql extension dan dikembangkan untuk mendukung fiturfitur terbaru pada versi MySQL 4.1keatas. Hampir semua fungsi yang ada pada mysql extension, juga tersedia pada mysqli. Selain menggunakan mysql maupun mysqli extension, cara ketiga untuk pengaksesan database MySQL dari PHP adalah menggunakan PHP Data Objects (atau sering disingkat dengan PDO).
3. Koneksi MySQL dengan PDO (PHP Data Objects) PDO (PHP Data Objects), adalah extension atau penambahan fitur dalam PHP yang dirancang sebagai interface universaluntuk pengaksesan berbagai jenis database (tidak hanya MySQL). Contohnya, jika kita menggunakan PDO dalam menulis kode pemograman, lalu suatu saat website kita bertukar database dari MySQL ke Oracle, maka kita tidak perlu mengubah semua kode program, cukup mengubah cara pemanggilan PDO diawal program saja. 6
Cara Penulisan mysql extension, mysqli extension, dan PDO (PHP Data Objects) Untuk mengetahui secara sekilas perbedaan cara pengaksesan database MySQL
un ia
ilk om .c
query("SELECT * FROM mahasiswa"); $row = $result‐>fetch_assoc(); // mengakses MySQL menggunakan PDO $pdo = new PDO('mysql:host=localhost;dbname=universitas', 'root', 'qwerty'); $statement = $pdo‐>query("SELECT * FROM mahasiswa"); $row = $statement‐>fetch(PDO::FETCH_ASSOC); ?>
om
menggunakan mysql extension, mysqli extension, dan PDO, berikut contoh kode PHPnya:
w .d
Dalam contoh diatas, dianggap bahwa user MySQL adalahroot, password ’qwerty’, dan nama
w
database ’universitas’.
w
Anda tidak perlu memahami kode program diatas, karena kita akan membahasnya dalam tutorial belajar PHP MySQL di duniailkom ini. Dalam tutorial PHP MySQL di duniailkom ini, untuk tahap pertama, saya akan menggunakan metode mysql extension yang berbasis fungsi terlebih dahulu. Walaupun metode ini tidak disarankan lagi, namun metode inilah yang paling mudah dipelajari dan dikenal luas. Setelah selesai membahas mysql extension, nantinya kita akan beralih ke mysqli extension. Cara pengaksesan MySQL dengan PDO yang berbasis objek akan lebih mudah dipahami jika anda telah mempelajari pemograman berbasis objek.
7
Pengertian Extension dalam PHP Sampai tutorial kali ini, beberapa kali saya menggunakan istilah extension. Namun apakah yang dimaksud denganextension ini? Extension di dalam PHP adalah istilah yang merujuk kepada kumpulan fungsi program tambahan yang membuat PHP dapat mendukung berbagai fitur baru. PHP terdiri dari aplikasi inti (PHP core), dan fungsi tambahan (extension). Dalam aplikasi inti PHP, PHP tidak menyediakan fungsi yang menangani database MySQL. Penanganan untuk fungsi database ini dipisahkan menjadi fungsi tambahan (extension). Selain database, extensiondalam PHP menyediakan berbagai fungsi lainnya untuk keperluan yang lebih khusus, seperti pembuatan gambar, kriptografi, penanganan email, pembuatan PDF, dan lainlain.
om
Cara Setting mysql extension dengan php.ini
ilk om .c
Untuk mengaktifkan extension dalam PHP, bisa dilakukan dari file setingan php.ini (cara membuka file php.ini telah kita pelajari pada tutorial Cara Mengubah File Konfigurasi PHP (php.ini)), lalu cari extension=php_mysql.dll danextension=php_mysqli.dll, pastikan menghapus tanda titik
w
w
w .d
un ia
koma di awal kedua extension ini untuk mengaktifkannya.
Masih pada file php.ini, pada bagian ini anda dapat melihat berbagai extension yang terdapat di dalam PHP, bahkan sebahagian besar tidak aktif secara default. File settingan php.ini menginstruksikan kepada PHP untuk mengaktifkan suatu extension, namun file extension itu sendiri juga harus ada di dalam PHP. Anda bisa membuka folder xampp\php\ext untuk melihat filefile extension yang digunakan untuk menambah fitur PHP. 8
om .c
Untuk memeriksa apakah setinganextension=php_mysql.dll sudah aktif, kita bisa menggunakan
om
fungsi phpinfo(). Anda bisa menjalankan fungsi phpinfo() didalam sebuah file php, atau bisa juga dengan menklik menu phpinfo() dari halaman localhostdari XAMPP. Dalam
w
w
w
.d
un ia
ilk
halaman phpinfo(), carilah bagian mysql seperti tampilan berikut:
Jika anda menemukan bagian mysql, berarti extension mysql telah aktif dan kita bisa mulaI membuat program untuk mengakses database melalui PHP.
9
Mengenal Fungsi koneksi PHPMySQL: mysql_connect() Untuk membuat koneksi antara PHP dengan MySQL, PHP menyediakan fungsi mysql_connect(). Fungsi ini diibaratkan sebagai cara untuk login kedalamMySQL Server. Fungsi mysql_connect() membutuhkan 3 argumen, dan mengembalikan nilai fungsi berupa ‘variabel koneksi’ ke MySQL. Berikut adalah format dasar penulisan fungsimysql_connect(): $link = mysql_connect(’mysql_host’, 'mysql_user', 'mysql_password'); $link merupakan variabel yang akan menampung hasil dari fungsi mysql_connect (). Jika
om
berhasil terhubung dengan MySQL, $link akan berisi nilai yang berfungsi sebagai ’link koneksi’ dengan MySQL. Link koneksi ini akan dibutuhkan sepanjang kita membuat program
ilk om .c
PHPMySQL nantinya.
mysql_host adalah argumen pertama dari fungsimysql_connect(). Nilai mysql_host diisi dengan alamat komputer dimana MySQL Server berjalan. Jika anda menjalankan MySQL menggunakan XAMPP di komputer yang sama dengan tempat web server Apache berjalan, maka alamat ini bisa diisi dengan’localhost’ atau ’127.0.0.1’. Namun jika MySQL server
un ia
dijalankan dari komputer lain, argumen ini akan berisiIP address dari komputer tersebut. mysql_user adalah nama user MySQL dimana kita akan login.
w .d
Seperti ’root’, ’admin’, ’andi’ dan lainlain tergantung kepada user MySQL yang telah terdaftar di server. Cara membuat dan menghapus user MySQL telah saya bahas pada Tutorial Cara
w
Membuat dan Menghapus User MySQL (CREATE USER). Jika anda menggunakan MySQL
w
bawaan XAMPP, user ’root’dapat digunakan. mysql_password diisi dengan password dari useryang dibuat pada argumen mysql_user. Variabel $link yang berisi link koneksi PHPMySQL (hasil dari fungsi mysql_connect()), termasuk ke dalam kelompok tipe data khusus PHP yang disebut resources. VariabelResources tidak bisa berdiri sendiri dan biasanya digunakan sebagai argumen untuk fungsi lain. Anda bebas mengganti nama variabel $link dengan nama lain, seperti $koneksi, $link_mysql, dll. Jika koneksi dengan PHP gagal dilakukan, fungsimysql_connect() akan mengembalikan nilai BooleanFALSE. Hasil FALSE ini akan disimpan dalam variabel $link dan bisa kita gunakan dalam perulangan IF untuk menampilkan error yang terjadi
Cara Membuat Koneksi PHP dengan MySQL Untuk mengetahui cara membuat koneksi antara MySQL dengan PHP, langsung saja kita masuk 10
kedalam contoh kode program cara penggunaan fungsi mysql_connect(). Berikut adalah kode PHP untuk membuat koneksi dengan MySQL:
.c om
"; echo 'hasil var_dump variabel $link : '; var_dump($link); ?>
ilk om
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21
Jika koneksi dengan MySQL berhasil, maka di dalam web browser akan tampil gambar seperti
un
ia
berikut ini:
.d
Pada bagian pertama kode program, saya membuat fungsimysql_connect(‘localhost’,’root’,”). Fungsi ini berarti saya mencoba login dengan MySQL Server yang berada di
w
alamat localhost (komputer yang sama dengan web server berada),
w
w
nama user ’root’ dan password ’’ (string kosong, yang berarti tanpa password). Fungsi mysql_connect() mengembalikan kondisi status koneksi ke dalam variabel $link. Variabel $link akan berisi link koneksi (bertipe resources) jika berhasil terkoneksi dengan MySQL, dan akan bernilai TRUE jika dikonversi menjadi Boolean. Namun variabel $link akan berisi nilai Boolean FALSE jika PHP gagal login ke MySQL. Nilai $link ini bisa digunakan untuk pengecekan apakah koneksi berhasil atau tidak. Jika terjadi kesalahan, misalkan saja saya mengubah password root menjadi ’123456’, maka tampilan web browser akan seperti berikut ini:
11
Seperti yang terlihat, PHP mengeluarkan pesan errormysql_connect(): Access denied for user ‘root’@’localhost’ (using password: YES), yang berarti login ke MySQL gagal karena salah password
om
untuk user root.
.c
Agar lebih informatif, diakhir program saya tampilkan nilai dari variabel $link dengan menggunakan
ilk om
fungsivar_dump(). Anda akan melihat bahwa variabel $linkbertipe data ’resources’ jika koneksi berhasil, dan bertipe data Boolean FALSE, jika koneksi gagal.
ia
Sedikit catatan tentang user MySQL jika menggunakan MySQL Server dari XAMPP.
un
Selain user root, MySQL bawaan XAMPP juga berisi beberapa user lain. Berikut adalah
w
w
w
.d
daftar user tersebut:
Hal yang penting dari tabel diatas, MySQL membolehkan user dengan nama: ANY, yang berarti MySQL bawaan XAMPP membolehkan user dengan nama apapun untuk masuk ke MySQL Server, sehingga jika anda mengubah contoh kita menjadi:$link=mysql_connect(‘localhost’,’aku_siapa’,”), PHP akan tetap berhasil masuk kedalam MySQL Server. MySQL versi XAMPP memang tidak dirancang untuk keamanan, namun lebih kepada kemudahan dalam membuat kode program PHP.
12
Mengenal fungsi die() dan exit() dalam PHP Salah satu fungsi PHP yang sering digunakan pada saat melakukan koneksi dengan MySQL adalah fungsi die() danexit(). Sesuai dengan namanya, fungsi ini bertujuan untuk ’membunuh’ atau ’keluar’ dari PHP. Kedua fungsi ini bertujuan untuk membuat proses PHP berhenti diproses pada saat itu juga (pada saat fungsi ini dipanggil). Sebelum ’bunuh diri’, fungsi die() dan exit() bisa menampilkan “pesan terakhir”.
ni
ai lk
om
.c o
.d u
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17
m
Berikut adalah penggunaan fungsi die() dalam membuat koneksi antara PHP dengan MySQL:
w w
Fungsi die() pada kode diatas akan menyebabkan proses PHP berhenti jika login ke database MySQL gagal dilakukan. Dengan menggunakan fungsi die(), kita bisa memastikan bahwa PHP tidak
w
akan mengeksekusi perintahperintah selanjutnya. Apabila kita tidak menggunakan die(), maka PHP akan terus menjalankan proses berikutnya yang akan menghasilkanerror (karena koneksi ke database memang tidak akan bisa dilakukan).
Menghentikan koneksi PHP MySQL dengan mysql_close() Koneksi PHP dengan MySQL akan dihentikan secara otomatis pada saat eksekusi program selesai, yaitu pada saat halaman PHP selesai diproses, sehingga kita tidak perlu menghentikanya secara manual. Namun jika anda ingin menghentikan koneksi dengan MySQL pada saat program PHP sedang berjalan, PHP menyediakan fungsi mysql_close(). Fungsi ini membutuhkan 1 buah argumen yang diisi dengan variabel ‘link koneksi’ hasil pemanggilan fungsi mysql_connect().Variabel koneksi ini 13
bersifat opsional, dan jika diabaikan maka PHP akan menggunakan koneksi mysql terakhir. Berikut adalah contoh penggunaan fungsi mysql_close():
1 2 3 4 5 6 7 8 9 10 11 12
.c om
Dalam tutorial kali ini, kita telah berhasil membuat koneksi antara PHP dengan MySQL Server. Namun untuk ’berkomunikasi’ dengan database dalam MySQL, harus menggunakan “query”. Dalam tutorial berikutnya kita akan membahas cara menjalankan query MySQL dari PHP dengan fungsi
w
w
w
.d
un
ia
ilk om
mysql_query.
14
Mengenal Fungsi Query PHPMySQL: mysql_query Untuk menjalankan query MySQL, PHP menyediakan fungsimysql_query(). Fungsi ini dijalankan setelah koneksi berhasil dilakukan dengan fungsi mysql_connect(). Fungsi mysql_query() merupakan fungsi yang akan sering kita gunakan, karena dengan fungsi inilah PHP akan melakukan ’percakapan’ dengan MySQL. Hampir seluruh perintah query MySQL yang kita bahas pada tutorial belajar MySQL Dasar, dapat dijalankan dengan fungsimysql_query(). Fungsi mysql_query() membutuhkan 2 argumen, dimana argumen pertama diisi dengan query MySQL, dan argumen kedua diisi dengan link koneksi hasil fungsimysql_connect(). Argumen kedua ini bersifat opsional.
om
Berikut adalah format dasar penulisan fungsimysql_query() dalam PHP:
$result = mysql_query('query_mysql',[$link_koneksi_mysql]);
ilk om .c
$result adalah variabel yang akan menampung hasil dari fungsi mysql_query(). Jika fungsi mysql_query()berhasil dijalankan, variabel $result akan berisi hasilquery. Namun hasil query ini harus diproses lebih lanjut agar datanya dapat ditampilkan. Variabel$result bertipe resources (sama dengan hasil dari fungsi mysql_conncect()).
un ia
Variabel $result akan bernilai Boolean FALSE jika query gagal dijalankan. Nama dari variabel ini tidak harus ditulis sebagai$result, anda bebas jika ingin menggantinya dengan nama lain. ‘query_mysql’ adalah argumen pertama fungsimysql_query(). Pada bagian inilah kita menulis
w .d
queryMySQL. Query tersebut selanjutnya akan dikirim kepada MySQL Server untuk diproses. Argumen ini harus pertipe String dan mengikuti aturan Stringdidalam PHP. Contoh query ini,
w
w
misalnya ”SELECT * FROM mahasiswa”, atau ”CREATE DATABASE universitas”. $link_koneksi_mysql adalah argumen kedua dari fungsi mysql_query(). Argumen ini diisi dengan variabel hasil pemanggilan fungsi mysql_connect().Argumen ini bersifat opsional, dan jika diabaikan, PHP akan menggunakan variabel mysql_connect() yang sedang terkoneksi saat ini. Jika anda belum memahami pengertian dan cara penulisan query SELECT MySQL, duniailkom telah menyediakan tutorial dasar tentang query dalam Tutorial MySQL: Cara Penulisan Query SELECT MySQL.
Cara Menjalankan query MySQL dari PHP Untuk memahami cara penggunaan fungsi mysql_query(), langsung saja kita masuk kedalam contoh program. Dalam contoh program berikut, saya akan membuat query untuk menampilkan 15
seluruh database yang ada di dalam MYSQL. Berikut adalah contoh program penulisan fungsimysql_query dalam PHP:
//jalankan query $result=mysql_query('SHOW DATABASES',$link);
un ia
ilk om .c
//tampilkan hasil query while ($row = mysql_fetch_row($result)) { echo $row[0]; echo "
"; } ?>
om
//jika koneksi gagal, langsung keluar dari PHP if (!$link) { die("Koneksi dengan MySQL gagal"); }
w .d
Jika anda menjalankan perintah diatas, didalam web browser akan tampil semua nama database yang ada dalam MySQL.
w
Pada baris ke3 dari program diatas, saya membuat koneksi dengan MySQL menggunakan
w
fungsi mysql_connect().Fungsi ini menggunakan user ’root’ dan tanpa password. Hasil koneksi fungsi saya simpan ke dalam variabel $link. Selanjutnya pada baris ke6 saya memeriksa nilai dari koneksi mysql_connect() dengan cara membuat logika IF untuk variabel $link. Jika MySQL gagal diakses, maka fungsidie() akan memerintahkan PHP untuk menghentikan program. Namun jika koneksi berhasil, pada baris ke12 saya membuat fungsi mysql_query() untuk menjalankan query ’SHOW DATABASES’. Query ini adalah perintah untuk menampilkan seluruh nama database yang ada padaMySQL. Kode program pada baris ke15 digunakan untuk menampilkan hasil query. Fungsi mysql_fetch_row() belum saya bahas, dan akan kita pelajari pada tutorial berikutnya. Apabila query yang digunakan lebih panjang dan kompleks, anda bisa menyimpannya di dalam sebuah variabel terlebih dahulu, baru kemudian dijalankan dengan mysql_query(),seperti contoh 16
berikut ini:
$query="SELECT * FROM mahasiswa WHERE IPK>5"; $result=mysql_query($query,$link); Dengan memindahkan query kedalam variabel, akan membuat program kita menjadi lebih rapi. Argumen kedua dari fungsi mysql_query() juga boleh tidak ditulis, dan PHP akan menggunakan link koneksi MySQLterakhir yang tersedia, seperti contoh berikut:
$query="SELECT * FROM mahasiswa WHERE IPK>5"; $result=mysql_query($query); Fungsi mysql_connect() dan mysql_query() adalah fungsi paling dasar dalam koneksi PHP dengan
om
MySQL. Untuk menampilkan hasil dari query tersebut, PHP menyediakan berbagai cara yang bisa digunakan untuk berbagai situasi. Cara pengaksesan ini akan kita pelajari pada artikelartikel
w
w
w .d
un ia
ilk om .c
selanjutnya.
17
Menampilkan Tabel MySQL dengan fungsi mysql_fetch_row Untuk menampilkan tabel MySQL di dalam PHP, hasil dari fungsi mysql_query() harus diproses lebih lanjut agar bisa ditampilkan di dalam web browser. PHP menyediakan banyak cara untuk menampilkan hasil query MySQL. Salah satunya akan kita bahas dalam tutorial kali ini: dengan fungsi mysql_fetch_row(). Perintah SELECT adalah query MySQL yang paling sering gunakan. Query ini berfungsi untuk menampilkan data daridatabase. Data yang ditampilkan MySQL biasanya diberikan dalam bentuk tabel yang terdiri dari baris dan kolom. Fungsi mysql_fetch_row() digunakan untuk menampilkan tabel secara baris per baris. Fungsi mysql_fecth_row() akan mengembalikan nilai 1 baris dari sebuah tabel pada setiap
om
pemanggilan. Sehingga untuk dapat menampilkan seluruh isi tabel, fungsi mysql_fecth_row() harus dipanggil secara berulang.
om
.c
Berikut adalah format dasar penulisan fungsimysql_fetch_row() dalam PHP
$row = mysql_fetch_row($result)
ilk
$row adalah variabel yang akan menampung hasil fungsi mysql_fetch_row(). Hasil dari
ia
fungsimysql_fetch_row() berupa tipe data array dengankey merujuk kepada kepada urutan
un
kolom, dan valuenya (nilai dari array) adalah isi dari kolom tersebut. $result adalah variabel inputan query untuk fungsimysql_fecth_row(). Variabel ini berasal dari
w
.d
fungsimysql_query().
w
Cara pengambilan data dari variabel $row, penting untuk dipahami.
w
Variabel $row hasil fungsi mysql_fetch_row() bertipe array. Jika sebuah baris di dalam tabel MySQL terdiri dari 3 kolom, maka varibel $row akan berisi nilai sebagai berikut:$row[0]=nilai_kolom_1, $row[1]=nilai_kolom_2, dan$row[2]=nilai_kolom_3. Index array dimulai dari 0, dan karena itu kolom 1 berada pada index 0, bukan index 1. Yang perlu menjadi perhatian, fungsi mysql_fetch_row()hanya membaca 1 baris pada sekali pemanggilan. Jika tabel kita terdiri dari 5 baris, maka fungsi mysql_fecth_row()harus diulang sebanyak 5 kali.
Cara Menampilkan Tabel MySQL dari PHP Agar lebih mudah memahami cara kerja fungsimysql_fetch_row(), kita akan langsung praktek dengan kode program. Karena fungsi mysql_fetch_row() digunakan untuk menampilkan data, kita harus membuat datanya 18
terlebih dahulu, yaitu berupa database MySQL beserta tabelnya. Sebagai data contoh dan sarana latihan menggunakan query MySQL, saya akan membuat database universitas, dan tabel mahasiswa_ilkom. Database universitas dan tabel mahasiswa_ilkom ini juga akan saya gunakan pada tutorial PHP MySQL selanjutnya.
w
w
.d
un
ia
ilk
om
.c
w
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51
om
Berikut adalah kode yang diperlukan:
19
52 53 54 55 56
$query="INSERT INTO mahasiswa_ilkom VALUES ('099145055', 'Neil Situmorang', 22, 'Medan', 1.9)"; mysql_query($query); $query="INSERT INTO mahasiswa_ilkom VALUES ('089023013', 'Alex Supriyanto', 23, 'Surabaya', 2.9)"; mysql_query($query); $query="INSERT INTO mahasiswa_ilkom VALUES ('109223041', 'Rani Sabrina', 21, 'Padang',3.7)"; mysql_query($query); echo "Database universitas dan Tabel mahasiswa_ilkom berhasil dibuat"; ?>
om
Kode PHP diatas sedikit panjang jika dibandingkan contohcontoh kita sebelumnya, namun intinya perintah diatas adalah untuk membuat database universitas, dan tabelmahasiswa_ilkom. Setelah
.c
tabel terbentuk, kemudian saya menambahkan beberapa data kedalam tabel tersebut.
om
Dari contoh diatas, anda juga dapat melihat cara pembuatan database, pembuatan tabel, dan cara
ilk
memasukkan nilai kedalam database. Semuanya dijalankan dengan fungsi mysql_query(). Jika anda sudah paham tentang query MySQL, perintah querydiatas tentunya tidak terlalu sulit untuk
ia
dipahami. Namun jika ragu tentang instruksi query yang saya gunakan, anda bisa mempelajarinya
un
di tutorial MySQL duniailkom.
.d
Fungsifungsi PHP yang saya gunakan juga telah kita pelajari pada tutorial sebelumnya. Tambahan
w
baru mungkin ada pada penggunaan logika IF untuk menangani fungsi yang gagal. Saya
w
dijalankan.
w
menggunakan instruksi (!$result) untuk masuk pada fungsi die() jika fungsi tersebut gagal
Sebagai contoh, jika anda menjalankan kode diatas sebanyak 2 kali, maka akan tampil pesan ‘Database mahasiswa gagal dibuat’. Hal ini terjadi karena terdapat duplikasi database di dalam MySQL, sehingga kode PHP akan berhenti pada baris ke 15 karena fungsi die().
Cara Menampilkan Baris Tabel Dengan Fungsi mysql_fetch_row Setelah tabel contoh selesai dibuat, saatnya kita mencoba menampilkan data dari tabel mahasiswa_ilkom dengan fungsi mysql_fetch_row(). Cara paling dasar untuk menampilkan data dari mysql adalah seperti kode program berikut ini:
1 2
$link=mysql_connect('localhost','root',''); //jika koneksi gagal, langsung keluar dari PHP if (!$link) { die("Koneksi dengan MySQL gagal"); } //gunakan database universitas $result=mysql_query('USE universitas'); if (!$result) { die("Database mahasiswa gagal digunakan"); } //tampilkan tabel mahasiswa_ilkom $result=mysql_query('SELECT * FROM mahasiswa_ilkom'); $row=mysql_fetch_row($result); echo "$row[0] $row[1] $row[2] $row[3] $row[4]"; ?>
w
w
w
.d
un
ia
ilk om
.c om
3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22
Kode program dari baris 1 sampai baris 16 merupakan persiapan untuk mengkoneksikan MySQL dan memilih database universitas. Perhatikan pada baris ke 12, dimana saya menjalankanquery “USE universitas”. Query ini ditujukan untuk memberitahu MySQL bahwa kita akan menggunakandatabase mahasiswa. Alternatif penulisanmysql_query(‘USE universitas’) adalah dengan menggunakan fungsi mysql_select_db(‘universitas’). Anda bebas ingin menggunakan salah satunya. Pada baris ke20 saya menjalankan query SELECT untuk menampilkan seluruh isi tabel mahasiswa_ilkom. Cara menjalankannya adalah dengan fungsi mysql_query()dengan perintah query: ‘SELECT * FROM mahasiswa_ilkom’. Hasil fungsi ditampung kedalam variabel $result. 21
Variabel $result selanjutnya diproses dengan fungsimysql_fetch_row($result), dan disimpan dalam variabel$row. Seperti yang telah kita pelajari, bahwa fungsimysql_fetch_row() akan menyimpan hasil query sebagaiarray dengan key adalah urutan kolom mulai dari key ke0 untuk kolom ke1 tabel, $row[1] untuk kolom ke2, dan begitu seterusnya. Karena tabel mahasiswa_ilkom hanya memiliki 5 kolom, maka $row[4] adalah kolom terakhir.
Cara Menampilkan Seluruh Tabel Dengan Fungsi mysql_fetch_row Sesuai namanya, fungsi mysql_fetch_row() hanya akan menampilkan baris perbaris, jadi bagaimana caranya untuk menampilkan seluruh tabel mahasiswa_ilkom? Caranya adalah dengan
Sehingga contoh program kita menjadi sebagai berikut:
w
w
.d
un
ia
ilk om
"; $row=mysql_fetch_row($result); echo "$row[0] $row[1] $row[2] $row[3] $row[4]"; echo "
"; $row=mysql_fetch_row($result); echo "$row[0] $row[1] $row[2] $row[3] $row[4]"; echo "
"; $row=mysql_fetch_row($result); echo "$row[0] $row[1] $row[2] $row[3] $row[4]"; echo "
"; $row=mysql_fetch_row($result); echo "$row[0] $row[1] $row[2] $row[3] $row[4]"; ?>
w
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29
.c om
mengulang fungsi mysql_fetch_row()sebanyak jumlah baris yang ingin ditampilkan.
22
Pada contoh diatas, saya menghapus baris fungsi die()sematamata agar contoh program kita tidak terlalu panjang.
m .c om
Kode program diatas berjalan sebagaimana dengan seharusnya, karena pada setiap pemanggilan fungsimysql_fetch_row(), PHP akan ‘menggeser’ penunjuk baris MySQL ke baris berikutnya di dalam tabel. Sehingga untuk pemanggilan mysql_fetch_row() ke2 posisi pointer MySQL akan
lk o
berada dibaris ke2 dari tabel, dan begitu seterusnya hingga pemanggilan mysql_fetch_row() ke5.
ia i
Menampilkan Tabel MySQL Dengan Perulangan For
un
Namun jika anda perhatikan, fungsi mysql_fetch_row()yang ditulis secara berulangulang pada contoh sebelumnya merupakan pekerjaan yang cocok untuk fungsi perulangan. Sehingga dengan
w
w
"; } ?>
w
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16
.d
menggunakan perulangan for, kode kita akan menjadi lebih mudah ditulis.
Fungsi diatas akan menampilkan seluruh baris yang ada di dalam tabel mahasiswa_ilkom denganmelakukan perulangan fungsi mysql_fetch_row() sebanyak 5 kali.
23
Namun masih ada 1 hal lagi yang bisa kita perbaiki dari program diatas.
Menampilkan Tabel MySQL Dengan Perulangan While Perulangan for mengharuskan kita untuk menulis langsung jumlah perulangan yang harus dilakukan. Pada saat penulisan program, kita telah mengetahui bahwa tabelmahasiswa_ilkom berisi 5 baris, Namun bagaimana jika ternyata data di dalam tabel saat ini tidak lagi 5, tetapi sudah lebih dari itu? Untuk perulangan dimana banyaknya perulangan tidak diketahui pada saat penulisan program, kita bisa beralih keperulangan while (Tutorial Cara Penulisan Perulangan While dalam PHP). Untuk membuat hal ini menjadi lebih mudah, fungsimysql_fetch_row() akan mengembalikan nilai FALSE jika pointer telah berada di baris terakhir tabel MySQL. Nilai kembalian ini menjadi
m .c om
variabel yang tepat untuk ‘kondisi berhenti’ pada perulangan while.
Berikut adalah contoh program penggunaanmysql_fetch_row () dengan perulangan while:
w
w
.d
un
ia i
lk o
"; } ?>
w
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15
Konsep perulangan while seperti diatas akan sering anda lihat untuk menampilkan data dari database MySQL.
Selain menggunakan fungsi mysql_fetch_row(), PHP masih memiliki fungsi lainnya untuk menampilkan data tabel dariMySQL, salah satunya adalah fungsi mysql_fecth_array(). Fungsi mysql_fecth_array() lebih fleksibel karena kita tidak hanya bisa menggunakan angka, namun juga ‘nama’ kolom sebagai key array. Pembahasan tentang fungsimysql_fecth_array() akan kita pelajari dalam tutorial selanjutnya: Cara Menampilkan Tabel MySQL dari PHP (mysql_fetch_array().
24
Menampilkan Tabel MySQL dengan fungsi mysql_fetch_array Fungsi mysql_fetch_array() pada dasarnya hampir sama dengan fungsi mysql_fetch_row(), namun fungsimysql_fetch_array() memberikan alternatif cara menampilkan data MySQL dengan lebih mudah. Jika dalam fungsi mysql_fetch_row() hasil fungsinya berupa array dengan key atau indexnya berupa angka, seperti :$row[1], $row[2] dan $row[3], maka di dalammysql_fetch_array(), kita bisa menggunakan nama kolom dari tabel MySQL sebagai key atau index array seperti berikut ini: $row[‘nim’], $row[‘nama’] dan $row[‘umur’]. Cara penulisan seperti ini akan memudahkan pembuatan program. Selain menggunakan nama kolom pada index array, fungsimysql_fetch_array() juga bisa
om
menggunakan index penomoran kolom seperti mysql_fetch_row(), atau bahkan keduanya sekaligus. Untuk mengatur fitur ini, fungsimysql_fetch_array() membutuhkan parameter tambahan.
ilk om .c
Berikut adalah format dasar penulisan fungsimysql_fetch_array() dalam PHP:
$row= mysql_fetch_array($result,[’tipe_hasil’])
$row adalah variabel yang akan menampung hasil fungsi mysql_fetch_array(). Hasil dari
un ia
fungsi mysql_fetch_array() berupa tipe data array dengankey yang bergantung kepada konstanta ‘tipe_hasil’.
fungsi mysql_query().
w .d
$result adalah variabel hasil menjalankan query MySQL yang berasar dari
w
’tipe_hasil’ merupakan konstanta opsional yang digunakan untuk mengatur index array dari hasil fungsi mysql_fetch_array(). Konstanta yang bisa digunakan adalah salah satu dari ketiga
w
nilai berikut:MYSQL_NUM, MYSQL_ASSOC atau MYSQL_BOTH. Jika argumen ini tidak ditulis, nilai defaultnya adalah MYSQL_BOTH.
Perbedaan mysql_fetch_array: MYSQL_NUM, MYSQL_ASSOC danMYSQL_BOTH Cara mengakses array dari fungsi mysql_fetch_array()bergantung kepada argumen ‘tipe_hasil’. Argumen ‘tipe_hasil’ hanya bisa berisi satu dari 3 konstanta:MYSQL_NUM, MYSQL_ASSOC atau MYSQL_BOTH. Jika argumen keduadari fungsi mysql_fetch_array() diisiMYSQL_NUM, maka index array akan menjadi angka (sama seperti hasil mysql_fetch_row()), dan bisa ditampilkan seperti: $row[1], $row[2] dan $row[3].
25
Jika argumen kedua diisi MYSQL_ASSOC, index array akan menjadi nama kolom, dan bisa ditampilkan seperti: $row[‘nim’], $row[‘nama’] dan $row[‘umur’]. Opsi ketiga, jika argumen diisi MYSQL_BOTH maka index array mendukung 2 pemanggilan, yakni berupa angka dan nama kolom. Sama seperti fungsi mysql_fetch_row(), mysql_fetch_row()hanya membaca 1 baris pada sekali pemanggilan. Jika tabel kita terdiri dari 5 baris, maka fungsi mysql_fecth_array()harus diulang sebanyak 5 kali (atau menggunakan metoda perulangan while seperti yang kita lakukan pada tutorialmysql_fetch_row().
Cara Penggunaan Fungsi mysql_fecth_array() Agar lebih mudah dipahami, langsung saja kita masuk kedalam contoh kode program. Masih
.c om
menggunakan contoh database universitas yang dibuat pada tutorialmysql_fetch_row(), kali ini saya akan menggunakan fungsimysql_fetch_array() untuk menampilkan hasilnya.
w
w
.d
un
ia
"; } ?>
w
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15
ilk om
Berikut adalah contoh penggunaan fungsi mysql_fetch_array() dalam PHP:
26
Dalam contoh diatas, baris 16 merupakan kode program untuk membuat koneksi dengan MySQL. mengembalikan seluruh isi tabelmahasiswa_ilkom.
.c om
Pada baris ke9, saya membuat query ‘SELECT * FROM mahasiswa_ilkom’yang akan
Jika diperhatikan, kode program diatas sama persis dengan contoh terakhir pada
ilk om
tutorial mysql_fetch_row(), hanya pada baris ke 10 saya menggantinya dengan fungsimysql_fetch_array().
Konstanta MYSQL_NUM pada argumen ke2 fungsimysql_fetch_array(), menginstruksikan kepada
ia
PHP bahwa nilai kembalian untuk variabel $row adalah array dengan index angka, sehingga
un
hasilnya sama persis denganmysql_fetch_row() yang diakses dengan $row[0] untuk kolom
.d
pertama tabel, $row[1] untuk kolom kedua tabel, dan seterusnya.
w
Jika menggunakan konstanta MYSQL_NUM akan membuat fungsi mysql_fetch_array() sama
w
dengan mysql_fetch_row(),bagaimana dengan MYSQL_ASSOC? Dalam contoh berikut, saya akan
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16
w
mengubah konstanta fungsi mysql_fetch_array() dengan MYSQL_ASSOC :
"; } ?> 27
Pada contoh kali ini, pada baris ke10, fungsimysql_fetch_array() saya panggil dengan konstantaMYSQL_ASSOC sebagai argumen kedua. Dengan cara ini, hasil kembalian query, berupa array dengan index nama kolom dari tabel MySQL. Karena menggunakan konstanta MYSQL_ASSOC, cara pengaksesan nilai $row harus menggunakan index nama kolom tabel. Jika di dalam MySQL nama kolom adalah ‘nim’, maka untuk menampilkan data kolom tersebut, kita menggunakan $row[‘nim’]. Jika di dalam MySQL nama kolom adalah ‘tempat_lahir’, untuk menampilkan data kolom tersebut, adalah dengan $row[‘tempat_lahir’], dan seterusnya. Dengan cara ini, kita akan mudah untuk merancang tampilan tabel MySQL, terutama jika urutan kolom tidak ditampilkan secara berurutan. Untuk pilihan konstanta terakhir: MYSQL_BOTH, MySQL akan mengembalikan nilai $row yang bisa diakses baik dengan index angka maupun dengan index nama kolom. Berikut adalah contoh kode
w
.d
un
ia
ilk
om
.c
"; } ?>
w
w
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16
om
programnya:
Seperti yang terlihat, saya membuat perintah $row[0] dan$row[‘nama’] dalam pemanggilan yang sama, dan PHP dapat menampilkan hasil sesuai dengan yang diharapkan. Perlu diketahui, pada panduan resmi PHP, fungsi mysql_fetch_array() ditegaskan tidak akan lebih lambat dari pada fungsimysql_fetch_row(), walaupun fungsimysql_fetch_array() menawarkan fitur tambahan. Pengaksesan array hasil MySQL dengan menggunakan angka maupun nama akan sama cepatnya.
Pada dasarnya, pengaksesan MySQL melalui PHP, hanya membutuhkan 3 fungsi utama, yakni mysql_connect(),mysql_query(), dan mysql_fecth_array(). Sampai disini, kita telah mempelajari ketiga fungsi penting tersebut. 28
Dalam tutorial selanjutnya, kita akan mempelajari cara menampilkan pesan error dari MySQL ketika
w
w
w .d
un
ia
ilk
om
.c
om
query yang dijalankan tidak sesuai.
29
Cara Menampilkan Pesan Error MySQL dalam PHP Agar lebih informatif, ketika query tidak berjalan dengan semestinya, PHP menyediakan 2 buah fungsi untuk menampilkan pesan error dari MySQL, yaitu fungsimysql_errno() dan mysql_error(). Kedua fungsi ini membutuhkan 1 buah argumen yang bersifat opsional, yakni variabel hasil pemanggilan fungsi mysql_connect(). Namun jika argumen tidak ditulis, PHP akan menggunakan koneksi MySQL terakhir yang tersedia. Fungsi mysql_errno() akan menampilkan nomor atau kode error MySQL, sedangkan fungsi mysql_error() akan menampilkan penjelasan error tersebut.
om
Contoh Penggunaan Fungsimysql_errno dan mysql_error Sebagai contoh penggunaan kedua fungsi tersebut, silahkan jalankan kode program berikut ini:
w
w .d
un ia
ilk om .c
"; echo "Kode error: ".mysql_errno($link); echo "
"; echo "Pesan error: ".mysql_error(); ?>
w
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19
30
Pada kode diatas, saya mencoba menjalankan perintah untuk menghapus database ‘tidak_ada’ yang memang tidak tersedia di dalam MySQL. Jika kita menjalankan query tersebut tanpa bantuan fungsi mysql_errno() danmysql_error(), maka kita tidak tahu apa pesan error dari MySQL. Perhatikan juga bahwa pada pemanggilan fungsimysql_error() pada baris terakhir, saya tidak
w
w
w .d
un ia
ilk om .c
om
memberikan argumen, karena sifatnya yang opsional.
31
Cara Penggunaan Fungsi mysql_num_rows Fungsi mysql_num_rows() digunakan untuk mengetahui berapa banyak jumlah baris hasil pemanggilan fungsimysql_query(). Fungsi ini membutuhkan 1 buah argumen, yakni variabel resources hasil dari fungsi mysql_query(). Berikut adalah contoh penggunaannya:
w
.d
un
ia
ilk om
.c om
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21
Total mahasiswa berjumlah 5 orang
w
1
w
Jika kode diatas dijalankan, hasil yang didapat adalah sebagai berikut:
Cara Penggunaan Fungsi mysql_affected_rows Fungsi mysql_affected_rows() digunakan untuk mengetahui jumlah baris tabel yang dikenai proses oleh query MySQL. Hasil ini biasanya diperlukan jika kita ingin mengetahui dengan lebih detail tentang proses yang berlangsung. Sebagai contoh, kita ingin melakukan operasi DELETEkepada sebuah tabel. Hal ini bisa dilakukan dengan fungsimysql_query. Namun kita tidak bisa mengetahui berapa jumlah baris yang telah dihapus. Jika menggunakan MySQL, informasi ini ditampilkan langsung setelah query:
32
.c om
Untuk mengambil informasi ini dari PHP, kita menggunakan fungsi mysql_affected_rows(). Berikut adalah contoh penggunaannya:
w
w
.d
un
ia
ilk om
w
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21
Dan, hasil yang ditampilkan adalah:
1
Data yang di hapus sebanyak: 2 orang.
Baik fungsi mysql_num_rows dan mysql_affected_rowssering digunakan di dalam situasi dimana kita membutuhkan informasi terkait query MySQL yang dijalankan. Kedua fungsi ini melengkapi fungsifungsi lain yang telah kita pelajari di dalam tutorial PHP MySQL ini. 33
Pada tutorial PHP MySQL selanjutnya, kita akan membahascara menampilkan tabel MySQL dengan
w
w
w .d
un
ia
ilk
om
.c
om
menggunakan objek (fungsi mysql_fetch_object).
34
Penggunaan Objek untuk Menampilkan data MySQL Fungsi mysql_fetch_row dan mysql_fetch_array yang telah kita pelajari sebelumnya, menggunakan array untuk menampung hasil query MySQL. Sebagai contoh, untuk menampilkan hasil tabel mahasiswa_ilkom dengan fungsimysql_fetch_array, kita mengaksesnya dengan cara berikut:
1
$row['nim'], $row['nama'], $row['umur'], $row['tempat_lahir'], dan $row['IPK']
Dengan kata lain, nama kolom berfungsi sebagai “key” dari array $row. Selain menggunakan array, PHP juga menyediakan fungsimysql_fetch_object jika kita ingin mengakses hasil query menggunakan notasi objek. Nama kolom akan berfungsi sebagai property dari objek $row. Menggunakan contoh tabel mahasiswa_ilkom ,maka cara
$row‐>nim, $row‐>nama, $row‐>umur, $row‐ >tempat_lahir, dan $row‐>IPK
.c o
1
m
mengaksesnya adalah sebagai berikut:
om
Karakter tanda panah (>) digunakan untuk mengakses property dari sebuah objek di dalam PHP.
ilk
Mengenai pemrograman berbasis objek di dalam PHP, duniailkom telah membuat tutorial lengkap jika anda ingin mempelajari OOP PHP. Silahkan mengunjungi Tutorial OOP
un
ia
PHP:Pemrograman Berbasis Objek dengan PHP.
w
.d
Cara Penggunaan Fungsi mysql_fetch_object
w w
Selain perbedaan cara akses diatas, cara penggunaan fungsi mysql_fetch_object untuk menampilkan tabel MySQL, hampir sama dengan fungsi mysql_fetch_row danmysql_fetch_array. Berikut adalah modifikasi kode program yang sebelumnya kita gunakan pada tutorial mysql_fetch_array untuk menampilkan seluruh isi tabel mahasiswa_ilkom:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16
17 18 19 20 21 22 23 24 25 26
digunakan"); } //tampilkan tabel mahasiswa_ilkom $result=mysql_query('SELECT * FROM mahasiswa_ilkom'); while ($row=mysql_fetch_object($result)) { echo $row‐>nim." ".$row‐>nama." ".$row‐ >umur." "; echo $row‐>tempat_lahir." ".$row‐>IPK; echo "
"; } ?>
Jika anda telah mempelajari tutorial mysql_fetch_array di duniailkom sebelumnya, maka kode diatas sangat mirip. Saya hanya mengubah fungsi mysql_fetch_array denganmysql_fetch_object, lalu
.c om
melakukan penyesuaian untuk pengaksesan property objek $row. Pengaksesan dengan objek ini akan lebih lengkap apabila kita menggunakan
ilk om
extension mysqli atau PDO. Kedua metode ini akan kita pelajari dalam tutorial terpisah nantinya.
Menutup cara penggunaan mysql extension (sebelum kita masuk ke mysqli extension), dalam tutorial berikutnya saya akan mencoba menkombinasikan HTML, CSS, PHP dan MySQL untuk
ia
menampilkan data dengan tampilan yang menarik. Selanjutnya dalam Tutorial PHP MySQL: Cara
w
w
w
.d
un
Penyajian Data MySQL dalam bentuk tabel HTML dengan CSS.
36
Menyajikan Data MySQL dengan Tabel HTML dan CSS Umumnya, hasil query MySQL yang kita ambil dari database akan ditampilkan ke dalam bentuk tabel. Dengan mengkombinasikan PHP, MySQL, HTML dan CSS, kita bisa menampilkan data tabel MySQL dengan desain yang beragam. Dalam tutorial PHP MySQL ini, saya akan mencoba
un
ia
ilk
om
.c
om
menampilkan tabel mahasiswa_ilkom dengan tampilan akhir seperti gambar berikut:
.d
Tampilan diatas di dapat dengan mengkombinasikan PHP, MySQL, HTML dan CSS. Dan berikut
w
w
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23
w
adalah kode program yang digunakan:
37
m
w
w .d
un
ia ilk o
m
.c o
<meta charset="UTF‐8">
Belajar PHP MySQL <style> h3{ text‐align:center; } table { border‐collapse:collapse; border‐spacing:0; font‐family:Arial, sans‐serif; font‐size:16px; padding‐left:300px; margin:auto; } table th { font‐weight:bold; padding:10px; color:#fff; background‐color:#2A72BA; border‐top:1px black solid; border‐bottom:1px black solid;} table td { padding:10px; border‐top:1px black solid; border‐bottom:1px black solid; text‐align:center; } tr:nth‐child(even) { background‐color: #DFEBF8; }
Penyajian Data MySQL dalam bentuk tabel HTML dengan CSS
NIM | Nama | Umur | Tempat Lahir | IPK |
"; echo "".$row['nim']." | "; echo "".$row['nama']." | "; echo "".$row['umur']." | "; echo "".$row['tempat_lahir']." | "; echo "".$row['IPK']." | "; echo ""; } ?>