Menampilkan data mysql dalam list menu dengan php
List menu atau yang sering disebut combo box adalah sebuah objek dalam form yang disediakan oleh HTML. List menu digunakan untuk menampilkan pilihan yang umumnya bersifat statis misal pilihan nama kota, nama kategori, jenis jabatan, nama jurusan dll. Bagaimana seandainya kita ingin menampilkan pilihan dengan sumber datanya dari mysql?
Sebuah combo box / list menu dalam html dituliskan dengan cara :
<select name="kode_jurusan" id="kode_jurusan"> <option value="031">Multimedia</option> <option value="041">Jaringan</option> <option value="051">Perangkat Lunak</option> </select>
<select>...</select> adalah objek combonya sedangkan <option>..</option> adalah pilihanya, banyaknya baris option adalah banyaknya data yang dimunculkan dalam pilihan. Selain contoh diatas juga sering ditulis sepeti berikut :
<select name="kode_jurusan" id="kode_jurusan"> <option>Multimedia</option> <option>Jaringan</option> <option>Perangkat Lunak</option> </select>
Penggunaan kedua kode diatas sebenarnya sesuai keperluan, perbedaanya adalah : Cara pertama akan mengirimkan value-nya, sedangkan cara kedua mengirimkan labelnya. Jika memang antara value dan labelnya nilainya sama, berarti kita cukup pakai cara kedua, tapi kalo memang berbeda bisa pakai cara pertama.
Contoh kasus, anda ingin menampilkan nama jurusan yang ada dalam tabel database dengan susunan field seperti berikut :
Susunan query membuatnya :
CREATE TABLE IF NOT EXISTS `tb_jurusan` ( `kode_jurusan` char(4) NOT NULL, `nama_jurusan` varchar(30) NOT NULL, PRIMARY KEY (`kode_jurusan`) ) ENGINE=MyISAM DEFAULT CHARSET=latin1;
Kemudian sudah ada data yang dimasukkan seperti berikut :
Susunan query intuk menambah datanya :
INSERT INTO `tb_jurusan` (`kode_jurusan`, `nama_jurusan`) VALUES ('031', 'Multimedia'), ('041', 'Jaringan'), ('051', 'Perangkat Lunak');
Kemudian kita ingin menampilkan data-data tersebut dalam sebuah combo box sepetri berikut :
Untuk membuat seperti itu, kita memerlukan kode php seperti berikut :
<?php //Koneksi database mysql_connect("localhost","root","") or die(mysql_error()); mysql_select_db("db_jurusan") or die (mysql_error()); //Menampilkan combo box echo "Jurusan : <select name=\"kode_jurusan\" id=\"kode_jurusan\">"; $myquery="select kode_jurusan, nama_jurusan from tb_jurusan"; $daftarjurusan=mysql_query($myquery) or die (mysql_error()); while($dataku=mysql_fetch_object($daftarjurusan)) { //perulangan menampilkan data echo "<option value=\"$dataku->kode_jurusan\">$dataku->nama_jurusan</option>"; } echo "</select>"; ?>
Dilihat dari kode, pertama kita buat koneksi dan kemudian membuat objek combo box/list menu <select>, kemudian melakukan perulangan menuliskan <option>..</option> untuk menambahkan barisan pilihan yang diambil dari database.
Semoga bermanfaat.
Zainal Hakim
** Bebas disunting dengan menyebutkan sumber **