Mendapatkan Hasil dari Kueri SQL di PHP
Dalam pelajaran sebelumnya, kita telah membuat kode percobaan. Saya ingatkan bagian pentingnya, yang mengeksekusi kueri ke basis data:
<?php
$query = 'SELECT * FROM users';
$res = mysqli_query($link, $query) or die(mysqli_error($link));
var_dump($res);
?>
Seperti yang Anda lihat, setelah
kueri ke basis data dilakukan, di variabel $res
akan berisi hasil dari tindakan tersebut. Namun,
hasilnya tidak dalam bentuk yang kita butuhkan
di PHP, melainkan dalam bentuk yang dikirimkan oleh
basis data kepada kita.
Untuk mendapatkan hasil dalam bentuk yang biasa
kita gunakan, perlu menggunakan fungsi
mysqli_fetch_assoc, yang mengambil satu baris
dari hasil kueri.
Mari kita coba:
<?php
$row = mysqli_fetch_assoc($res);
var_dump($row);
?>
Hasil dari var_dump akan menampilkan array
dengan karyawan pertama:
<?php
['id' => 1, 'name' => 'user1', 'age' => 23, 'salary' => 400]
?>
Sementara itu, dari variabel $res, karyawan pertama
akan hilang, dan pemanggilan mysqli_fetch_assoc berikutnya
akan mendapatkan karyawan berikutnya.
Dan kita dapat memanggil fungsi kita seperti ini
sampai karyawan habis. Begitu ini terjadi,
pemanggilan fungsi berikutnya akan mengembalikan false.
Mari kita coba:
<?php
$row1 = mysqli_fetch_assoc($res);
var_dump($row1); // karyawan nomor 1
$row2 = mysqli_fetch_assoc($res);
var_dump($row2); // karyawan nomor 2
$row3 = mysqli_fetch_assoc($res);
var_dump($row3); // karyawan nomor 3
$row4 = mysqli_fetch_assoc($res);
var_dump($row4); // karyawan nomor 4
$row5 = mysqli_fetch_assoc($res);
var_dump($row5); // karyawan nomor 5
$row6 = mysqli_fetch_assoc($res);
var_dump($row6); // karyawan nomor 6
$row7 = mysqli_fetch_assoc($res);
var_dump($row7); // akan menampilkan NULL - karyawan habis
?>