Menjadi programmer PHP itu punya banyak pilihan. Anda bisa menggunakan gaya koding OOP, MVC atau gaya prosedural. PHP juga memberi kebebasan dalam hal melakukan koneksi database dan cara menampilkan data dari tabel. Bagi yang sudah ahli, tentunya hal ini menjadi kenyamanan tersendiri karena banyak cara untuk melakukan satu hal. Namun sebaliknya, bagi programer pemula, fleksibilitas PHP ini justru membuat bingung karena banyaknya variasi kode untuk melakukan satu tugas.

Tutorial kali ini saya akan fokus pada fungsi PHP untuk menampilkan data di tabel MYSQL. Ada 3 cara untuk menampilkan data dari MySQL, cara pertama menggunakan mysql_fetch_row(), cara kedua menggunakan mysql_fetch_array() dan cara ketiga menggunakan mysql_fetch_object(). Fungsi ini biasanya dipakai dalam struktur looping while .

Untuk memudahkan memahami 3 fungsi diatas, saya akan memberi sample dengan contoh tabel dibawah ini.
database

Anggaplah anda ingin menampilkan nama dan alamat dari tabel kampus seperti diagram diatas. Bagaimana caranya? mari kita cek satu persatu dengan menggunakan 3 fungsi daitas.

mysql_fetch_row()

$sql="select nama,alamat from kampus";
$result=mysql_query($sql) or die(mysql_error());

while($kampus=mysql_fetch_row($result)){

echo $kampus['0']." alamatnya ".$kampus['1'];

}

mysql_fetch_array()

$sql="select nama,alamat from kampus";
$result=mysql_query($sql) or die(mysql_error());

while($kampus=mysql_fetch_array($result)){

echo $kampus['nama']." alamatnya ".$kampus['alamat'];

}

mysql_fetch_object()

$sql="select nama,alamat from kampus";
$result=mysql_query($sql) or die(mysql_error());

while($kampus=mysql_fetch_row($result)){

echo $kampus->nama." alamatnya ".$kampus->alamat;

}

3 cara diatas bisa anda pilih mana yang paling nyaman untuk anda pakai, namun secara pribadi saya lebih suka memilih cara ketiga dengan menggunakan fungsi mysql_fetch_oject().

Query 2 table

Jika anda perhatikan relasi tabel diatas, baik table kategori maupun tabel kampus punya kolom yang sama yaitu nama, bagaimana cara menampilkan kolom yang sama jika query terdiri dari 2 tabel? Saya akan beri contoh sederhana.

code ke 4

$sql="select kampus.nama,kampus.alamat,kategori.nama as nama_kategori
 from kampus,kategori
where kampus.idkategori=kategori.idkategori";
$result=mysql_query($sql) or die(mysql_error());

while($kampus=mysql_fetch_object($result)){

echo $kampus->nama."alamatnya ".$kampus->alamat." Kategorinya ".$kampus->nama_kategori;

}

Catatan penting disini, gunakan kata AS di query lebih dari satu table seperlunya saja. Berikut ini contoh query SQL yang tidak perlu

$sql="select k.nama as nama ,k.alamat as alamat,kat.nama as nama_kategori
 from kampus as k,kategori as kat
where k.idkategori=kat.idkategori";

Sebagai programer, biasakan kodingnya pendek namun mudah dibaca, jangan membiasakan memperpanjang kode untuk hal yang tidak perlu. Sayanngya, cara query seperti ini banyak diajarkan dibuku buku, sangat disayangkan. Namun, jika anda terbiasa dengan cara ini juga tidak apa apa, cara kedua ini sebenarnya bagus untuk query yang relasinya lebih dari 3 tabel, namun untuk query dibawah 3 tabel, saya sarankan tetap pakai cara kode keempat.

Semoga artikel ini membuat anda makin suka dengan php dan membuat kode anda lebih mudah dibaca dan di rawat. Happy coding!

Categories: MySQLPHP

Candra Adi Putra

Candra Adi Putra S.Kom adalah Alumni STMIK AKAKOM Yogyakarta. Ingin Kerjasama, Pasang Iklan, Membuat aplikasi Android atau Web? hubungi saya di candraadiputra (at) gmail (dot) com atau WA ke 081328533115

3 Comments

Download Music · 29 September , 2014 at 10:51 am

mas kalo misalnya membatasi yang tampil biar gak tampil semua misalnya hanya 10 field kemudian yang lain ada di halaman selanjutnya gitu gimana?

jasa web instant · 15 September , 2014 at 11:25 am

Matur suwun Mas bermanfaat sekali. Mudah2an dilanjutin lagi mas seri tutorialnya

onayandra · 10 September , 2014 at 3:12 pm

artikel yg sangat bermanfaat, mksh ya gan

Tinggalkan Komentar plz!

This site uses Akismet to reduce spam. Learn how your comment data is processed.