Возможный дубликат:
Предупреждение: mysql_fetch_array (): предоставленный аргумент не является допустимым результатом MySQL
Когда я запускаю свою php-страницу, я получаю эту ошибку и не знаю, что случилось, может ли кто-нибудь помочь? Если кому-то нужна дополнительная информация, я отправлю весь код.
Предупреждение: mysql_fetch_assoc (): предоставленный аргумент не является допустимым ресурсом результата MySQL в H: \ Program Files \ EasyPHP 2.0b1 \ www \ test \ info.php в строке 16
<?PHP $user_name = "root"; $password = ""; $database = "addressbook"; $server = "127.0.0.1"; $db_handle = mysql_connect($server, $user_name, $password); $db_found = mysql_select_db($database, $db_handle); if ($db_found) { $SQL = "SELECT * FROM tb_address_book"; $result = mysql_query($SQL); while ($db_field = mysql_fetch_assoc($result)) { print $db_field['ID'] . "<BR>"; print $db_field['First_Name'] . "<BR>"; print $db_field['Surname'] . "<BR>"; print $db_field['Address'] . "<BR>"; } mysql_close($db_handle); } else { print "Database NOT Found "; mysql_close($db_handle); } ?>
Обычно это означает, что у вас есть ошибка в вашем SQL.
$sql = "SELECT * FROM myTable"; // table name only do not add tb $result = mysql_query($sql); var_dump($result); // bool(false)
Очевидно, что false
не является ресурсом MySQL, поэтому вы получаете эту ошибку.
EDIT с кодом, вставленным сейчас :
В строке перед циклом while добавьте следующее:
if (!$result) { echo "Error. " . mysql_error(); } else { while ( ... ) { ... } }
Убедитесь, что таблица tb_address_book
действительно существует и что вы правильно подключились к БД.
<?PHP $user_name = "root"; $password = ""; $database = "addressbook"; $server = "127.0.0.1"; $db_handle = mysql_connect($server, $user_name, $password); $db_found = mysql_select_db($database, $db_handle); if ($db_found) { $SQL = "SELECT * FROM tb_address_book"; $result = mysql_query($SQL); while ($db_field = mysql_fetch_assoc($result)) { print $db_field['ID'] . "<BR>"; print $db_field['First_Name'] . "<BR>"; print $db_field['Surname'] . "<BR>"; print $db_field['Address'] . "<BR>"; } mysql_close($db_handle); } else { print "Database NOT Found "; mysql_close($db_handle); } ?>