Не выбирается последняя запись

  • Автор темы Автор темы codex
  • Дата начала Дата начала

codex

Новичок
Не выбирается последняя запись

Выполняю некий запрос:
SELECT * FROM table WHERE field1='$f1' AND field2='$f2' ORDER BY time DESC;

При этом, упорно не выбирается последняя по времени запись. Даже не представляю в чём тут косяк может быть, уже весь код и базу перелопатил...
 
скорее всего, причина в кривом коде, который ты здесь не привел, которым ты считываешь данные построчно.
 
Данные я считываю стандартной конструкцией:
PHP:
while ($data = mysql_fetch_row($result))
{
}

И эта самая конструкция практически в том же виде нормально работает чуть выше с запросом с более мягким условием.
 
а попробовать в шелле этот запрос выполнить?
а если сортировку наоборот сделать - выводит эту запись?
 
Да, если сделать сортировку наоборот - выводится, в этом случае, опять же, все, кроме последней выводятся.

В шелле всё нормально, выбирается как надо...
 
кроме последней ПО ВРЕМЕНИ или последней в ВЫБОРКЕ?
если второе, то ищи, наконец, косяк в своем коде.
 
Я уже понял, что в коде, только вот второй день уже не могу найти причину. Спросил с надеждой, что кто-нибудь уже сталкивался с подобным.
 
codex
сколько записей у тебя выводится и какую цифру выводит
PHP:
 echo mysql_num_rows($result);
?
 
у тебя внутри цикла нигде $result не переопределяется ?
Например может внутри цикла стоит
$result = mysql_query($sql)

вывод ошибок включен ?
PHP:
error_reporting(E_ALL);
ini_set('display_errors', 'On');
 
Макс
скорее - лишний фетч где-то, как подсказывает мне интуиция...
 
$result точно не переопределяется, при выполнении скрипта нет даже ноутисов.
 
Нашёл в чём причина. У меня проверка результата заключалась в кривой конструкции

PHP:
if (!mysql_fetch_row($result)) $page_found=false;
else 
{
while...
[выполняется вывод]
}

Именно эта конструкция и хавала первую запись. Отчего - лично мне не известно. Всем спасибо.
 
Каюсь, свою ошибку понял и осознал, прошу прошение за потраченое время, но ведь пока не пнёшь - не полетит :)
 
Сверху