Warning: Cannot use a scalar value as an array in /home/admin/public_html/forum/include/fm.class.php on line 757

Warning: Invalid argument supplied for foreach() in /home/admin/public_html/forum/include/fm.class.php on line 770

Warning: Invalid argument supplied for foreach() in /home/admin/public_html/forum/topic.php on line 737
Форумы портала PHP.SU :: MySQL - Ограничение выборки количества записей при объединении

 PHP.SU

Программирование на PHP, MySQL и другие веб-технологии
PHP.SU Портал     На главную страницу форума Главная     Помощь Помощь     Поиск Поиск     Поиск Яндекс Поиск Яндекс     Вакансии  Пользователи Пользователи


 Страниц (1): [1]   

> Описание: постраничная навигация, mysql запрос на выборку нужного кол-ва записей при объединении
oleg000_som
Отправлено: 30 Июня, 2011 - 02:28:25
Post Id


Новичок


Покинул форум
Сообщений всего: 5
Дата рег-ции: Июнь 2011  


Помог: 0 раз(а)




Существуют 2 таблицы: таблица с сообщениями (message) и таблица с данными пользователей (users).
Вот код запроса, который выбирает сообщения с message и аватарку с users:
PHP:
скопировать код в буфер обмена
  1. $query = sprintf ('SELECT  m.id, m.sender, m.theme, m.text_mes, m.date, m.fno, u.avatar FROM message m INNER JOIN users u ON m.sender=u.username WHERE m.receiver="%s" AND m.fr="%s" ORDER BY m.date DESC ',$user,"1");
  2. $result = mysql_query($query);


fr - flag receiver, флаг который отвечает за показ сообщения на странице получателя 1-показывать, 0 - нет

И какая собственно проблема: нужно сделать выборку на ограниченное количество записей для постраничной навигации... вот только оказалось, что вот так запрос не катит:
PHP:
скопировать код в буфер обмена
  1. $query = sprintf ('SELECT  m.id, m.sender, m.theme, m.text_mes, m.date, m.fno, u.avatar FROM message m INNER JOIN users u ON m.sender=u.username WHERE m.receiver="%s" AND m.fr="%s" ORDER BY m.date DESC LIMIT %s, %s', $user, "1", $start, $num);
  2. $result = mysql_query($query);


Подскажет кто-то как быть в такой ситуации?

(Отредактировано автором: 30 Июня, 2011 - 02:32:32)

 
 Top
Мелкий Супермодератор
Отправлено: 30 Июня, 2011 - 09:38:04
Post Id



Активный участник


Покинул форум
Сообщений всего: 11926
Дата рег-ции: Июль 2009  
Откуда: Россия, Санкт-Петербург


Помог: 618 раз(а)




var_dump($query); и смотрите, что там у вас реально происходит.
Ну и, конечно, классика жанра phpfaq.ru/debug и mysql_error


-----
PostgreSQL DBA
 
 Top
oleg000_som
Отправлено: 30 Июня, 2011 - 18:23:47
Post Id


Новичок


Покинул форум
Сообщений всего: 5
Дата рег-ции: Июнь 2011  


Помог: 0 раз(а)




Дельный совет!
Я просто облажался в коде.
Запрос на выборку кол-во записей шел не в ту таблицу и в результате мой описанный запрос выше просил вывести LIMIT -3, 3 записей.

(Отредактировано автором: 30 Июня, 2011 - 18:24:49)

 
 Top
Страниц (1): [1]
Сейчас эту тему просматривают: 0 (гостей: 0, зарегистрированных: 0)
« Работа с СУБД »


Все гости форума могут просматривать этот раздел.
Только зарегистрированные пользователи могут создавать новые темы в этом разделе.
Только зарегистрированные пользователи могут отвечать на сообщения в этом разделе.
 



Powered by PHP  Powered By MySQL  Powered by Nginx  Valid CSS  RSS

 
Powered by ExBB FM 1.0 RC1. InvisionExBB