Secara umum, fungsi mysql_* digunakan sebagai berikut:
$id = 1234;
$query = 'SELECT name, genre FROM sometable WHERE id=' . $id;
// $query is a string with the MySQL query
$resource = mysql_query($query);
// $resource is a *MySQL result resource* - a mere link to the result set
while ($row = mysql_fetch_assoc($resource)) {
// $row is an associative array from the result set
print_r($row);
// do something with $row
}
Jika Anda meneruskan sesuatu ke mysql_fetch_assoc yang bukan merupakan sumber hasil MySQL (apakah itu string, objek, atau boolean), fungsi tersebut akan mengeluh bahwa ia tidak tahu apa yang harus dilakukan dengan parameter; yang persis seperti yang Anda lihat.
Sebuah gotcha umum :Anda mendapatkan peringatan ini jika Anda meneruskan sesuatu (selain string kueri yang valid) ke mysql_query
:
$id = null;
$query = 'SELECT name, genre FROM sometable WHERE id=' . $id;
$res = mysql_query($query);
// $res === FALSE because the query was invalid
// ( "SELECT name, genre FROM sometable WHERE id=" is not a valid query )
mysql_fetch_assoc($res);
// Warning: don't know what to do with FALSE, as it's not a MySQL result resource