Здравствуйте. Пишу скрипт на php, который по запросу пользователя выводит список документов, по 10 на страницу, все ок, все работает. Но если в запросе указать то, чего нет, выдает вот такую ошибку.
Warning: mysql_fetch_assoc() expects parameter 1 to be resource, boolean given
сам код такого типа
$query = "SELECT * FROM `nal` WHERE `name`LIKE \"%$search%\" AND `remainder` > 0 ORDER BY `id` DESC LIMIT $start_from, $on_page";
$res = mysql_query($query);
while ($row = mysql_fetch_assoc($res))
{
Как я понял $res возвращает значение False, и поэтому дальше и вылазит ошибка, как правильнее исправить. Добавить if перед while? Я пробовал перед этим просто написать что если равно false вывести echo результатов нет и exit, но он вывел мне и сообщение, и ошибку.
Попробуйте следующий код:
$res = mysql_query($query);
if (!$res) {
echo "Не удается успешно выполнить запрос ($query). Ответ базы данных: " . mysql_error();
exit;
}
if (mysql_num_rows($res) == 0) {
echo "Записи не найдены, просто выходим";
exit;
}
while ($row = mysql_fetch_assoc($res))
{
В таком случае вы увидите причину по которой не работает ваш код.
Апостиль в Лос-Анджелесе без лишних нервов и бумажной волокиты
Основные этапы разработки сайта для стоматологической клиники
Продвижение своими сайтами как стратегия роста и независимости