Di artikel kali ini saya akan membahasa caranya menghubungkan PHP dengan database menggunakan MySQL di artikel sebelumnya.
Bagi yang belum membuat database bisa lihat artikel saya sebelumnya disini Artikel berikut ini.
Kita membutuhkan database yang menampung data siswa yang sebelumnya kita buat dan sekarang kita lihat dulu database yang sudah kita buat,
Untuk menampilkan database yang ada di DBMS MySQL kalian bisa membuka localhost/phpmyadmin/.Untuk membuka phpmyadmin jangan lupa nyalakan XAMPP apache dan MySQL-nya.Seperti yang kalian lihat kita sudah membuat database phpdasar dan tabel siswa di dalamnya,lalu kita lihat struktur dari tabel kita
Saya punya 5 buah field dan masing-masing mempunyai tipe data sesuai dengan isinya nanti apa,lalu kita lihat isi dari tabel kitaIsinya sudah sesuai dengan tabel-nya.Syarat-nya kalian harus mempunyai database dan tabel.
Untuk menghubungkan halaman web kita dengan MySQL menggunakan bahasa PHP,kita bisa menghubungkan-nya beberapa cara
-Ekstensi MySQL:Menggunakan driver yang dimiliki PHP atau fungsi-fungsi untuk memanipulasi database SQL
-Ekstensi MySQLI:Yang ini akan kita gunakan,karena lebih baik dan aman
-PDO(PHP Data Object):Driver untuk terhubung kedalam database dan bisa terhubung dengan banyak database
Kita gunakan Ekstensi MySQLI dan langsung coding saja untuk menghubungkan halaman website kita ke MySQL.
Silahkan kalian buka folder htdocs,buka folder phpdasar lalu buat file baru pertemuan9,kenapa 9 bukan 8?
Karena disebelumnya kita hanya belajar mengenai MySQL saja dan langsung lewati pertemuan8-nya.
Buka file pertemuan9 di code editor milik kalian,kasih nama index.php.
Sebelum kita masuk terconnect dengan database,saya akan jelaskan dulu scenario halaman kita.
Jadi halaman ini akan kita terus gunakan terus-menerus,halaman index ini akan kita anggap sebagai halaman index untuk seorang admin.
Jadi admin bisa masuk melihat data seluruh data siswa,menambah,menghapus,mengubah dan mencari.Ketika siswa-nya sudah banyak kita tinggal mencari-nya saja.
Tapi untuk sekarang kita hanya baru akan koneksi dan melihat datanya saja,kita buat tampilan dulu seperti ini,
Lalu didalam table-nya kita buat 2 bagian header-nya ada datanya seperti ini,Aksi ini untuk memunculkan tombol mengubah dan menghapus data didalam tiap baris-nya,lalu kita lihat hasilnyaJadi ini untuk judulnya dan belum terkoneksi dengan databasenya.
Kita bikin data-nya dan kita simulasi kan data-nya ada 1 saja,seperti ini
HasilnyaTampil satu baris saja dan ini ditulis manual oleh saya.Sekarang kita akan mulai menghubungkan halaman index.php kita ke database MySQL kita,seperti iniKoneksi ini kita membutuhkan sebuah driver yaitu MySQLI_connect,kita membutuhkan beberapa parameter didalam function-nya.
Pertama nama host-nya,username,password,nama database-nya,hasilnyaKalau betul hasilnya sama saja dan artinya kita sudah berhasil terkoneksi dengan database.
Setelah itu kita akan mengambil data dari tabel siswa / query data siswa.
Kita gunakan sebuah function mysqli_query.
Paramater 1 adalah koneksi ke database-nya dan kita simpan dalam sebuah variabel agar mudah
Paramater 2 adalah query-nya mau apa,query-nya tulis dalam bentuk string lalu masukkan sintaks sql-nya,seperti iniNah kalian harus berhati-hati menggunakan query karena jika ada kesalahan tidak ada pesan error-nya.
Cara mengatasinya kita simpan dulu query-nya dalam sebuah variabel $ result,ketika kita melakukan query,mysqli query-nya akan mengembalikan 2 hal.
Pertama jika berhasil maka query-nya akan dilakukan dan mengembalikan nilai true.
Kedua jika gagal fungsi itu tidak akan mengembalikan query tapi akan mengembalikan nilai false,hasilnyaNah ada tulisan diatasnya,coba kita pahami yang bisa kita pahami aja:
1.Itu hasil dari mysqli query
2.(5)itu artinya kayaknya ada berapa data didalam tabel siswa
3.[field_count] jumlah field-nya ada 5,kita lihatNah benar ada 5 field-nya
4.[num_rows]jumlah row-nya ada 4 dan lihat digambar benar ada 4 rows.
Kayaknya benar kita sudah berhasil terkoneksi tapi datanya tidak kelihatan.
Disaat kalian melakukan query itu benar,tapi isi dari result-nya semua diambil datanya +isi dari data tersebut.
Maka kita harus mengambil data siswa dari object result /fetch.
Ada 4 cara untuk mengambil data dari object result
1.mysqli_fetch_row
2.mysqli_fetch_assoc
3.mysqli_fetch_array
4.mysqli_fetch_object
Kita coba yang 1,hasilnyaTerus kita perhatikan data-nya dengan CTRL+UKita lihat data-nya betul dan kita lihat bahwa mysqli_fetch_row itu mengembalikan array numerik.
Selajutnya kita coba yang 2,hasilnyaTerus kita perhatikan data-nya dengan CTRL+UKita lihat bahwa mysqli_fetch_row itu mengembalikan array asosiatif.
Selajutnya kita coba yang 3,Saya minta untuk menampilkan hanya jurusan saja /array asosiatif dan hasilnyaKita mencoba menjadi array numerikhasilnyaHasilnya sama persis dengan array asosiatif dan kesimpulannya bahwa mysqli_fetch_array itu bisa menggunakan kedua array jadi lebih fleksibel.
Selajutnya kita coba yang 4,
Mysqli_fetch_object tidak akan kita pakai karena mengembalikan objek dan tidak punya key numerik dan asosiatif.
Kalau mau object kita memanggilnya menggunakan tanda panah lalu apa nama fieldnya,seperti inihasilnyaKalau menggunakan object pakai cara itu.
Nah kita pakai menggunakan assoc saja dan kita sudah berhasil mengambil datanya tapi cuman 1 saja.Untuk menampilkan semua datanya maka fetch ini harus menggunakan perulangan(looping),caranya beginihasilnyaBaru sekarang tampil semua namanya.
Sekarang kita cari cara supaya datanya masuk ke tabel yang kita bikin.
Kita komentar perulangan yang tadi dan scroll kebawah ke bagian <tr> dan melakukan perulangan disitu supaya <tr>-berisi data yang ada di database,seperti iniKita taruh perulangan di bagian atas tr dan akhir dari tag php kita taruh diakhir tr-nya dan hasilnyaBuka index.php dan sekarang saya akan membuat file baru beri nama function,didalamnya saya akan menyimpan fungsi-fungsi yang dibutuhkan aplikasi kita,salah satunya adalah connection dan query dan ketika membutuhkannya kita tinggal memanggil halaman function itu seperti ini
Lalu koneksi yang ada di index.php pindahkan ke function.phpUntuk menghubungkannya ke halaman function.php menggunakan require,seperti iniDan dihalaman index.php tambahkan $siswa=query seperti ini,Juga ganti while-nya menjadi foreach seperti ini,
Hasilnya seperti berikutKita sudah mencoba mengkoneksikan ke database,sudah mengambil data dari tabel dan membuat script kita lebih ringkas dan kedepannya kita akan perbaiki terus halaman function dan index-nya.
Nah sampai disini dulu pembahasan mengenai PHP & MySQL
Dan terima kasih sudah meluangkan waktu untuk membaca artikel ini dan sampai jumpa di artikel selanjutnya
Komentar
Posting Komentar