Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Скриптовые языки программирования > PHP
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 17.05.2014, 10:31   #1
Parallelogram
Недотепа
Форумчанин
 
Регистрация: 18.01.2011
Сообщений: 174
По умолчанию Вывод из БД в обратном порядке

PHP код:
include("bd.php");
$res=mysql_query("SELECT * FROM `mess` ORDER BY `id` DESC LIMIT 20");
echo 
$d['login']$d['mess']."<br>"
Как сделать так, чтобы новые выводимые данные появлялись снизу, а не сверху списка?
Parallelogram вне форума Ответить с цитированием
Старый 17.05.2014, 11:30   #2
Andkorol
Старожил
 
Регистрация: 31.05.2010
Сообщений: 3,301
По умолчанию

ORDER BY `id` ASC
Andkorol вне форума Ответить с цитированием
Старый 17.05.2014, 11:36   #3
Parallelogram
Недотепа
Форумчанин
 
Регистрация: 18.01.2011
Сообщений: 174
По умолчанию

Да, но мне нужно чтобы выводился нe весь список, а ПОСЛЕДНИЕ 20 сообщений. В Вашем же случае выводятся так же 20 сообщений, но первых. Мне так не ннадо.

Последний раз редактировалось Parallelogram; 17.05.2014 в 11:41.
Parallelogram вне форума Ответить с цитированием
Старый 17.05.2014, 12:06   #4
Andkorol
Старожил
 
Регистрация: 31.05.2010
Сообщений: 3,301
По умолчанию

Тогда отсортируй результаты своего первого запроса в обратном порядке по id – средствами PHP.
usort

Последний раз редактировалось Andkorol; 17.05.2014 в 12:11. Причина: usort
Andkorol вне форума Ответить с цитированием
Старый 17.05.2014, 13:25   #5
DpolenST
Форумчанин
 
Регистрация: 28.09.2013
Сообщений: 115
По умолчанию

если записи не удаляются и id каждой новой записи увеличивается на "1", то можно так
Код:
$res=mysql_query("SELECT * FROM `mess` WHERE `id` > (SELECT MAX(id) FROM `mess`)-20 ORDER BY `id` ASC");
Что бы еще такого сделать, чтобы ничего не делать?

Последний раз редактировалось DpolenST; 17.05.2014 в 13:42.
DpolenST вне форума Ответить с цитированием
Старый 17.05.2014, 16:23   #6
vovk
!=
Участник клуба
 
Аватар для vovk
 
Регистрация: 08.09.2008
Сообщений: 1,751
По умолчанию

а как вы выводите сейчас данные?
vovk вне форума Ответить с цитированием
Старый 18.05.2014, 14:57   #7
Kostia
Участник клуба
 
Аватар для Kostia
 
Регистрация: 21.11.2007
Сообщений: 1,690
По умолчанию

SELECT * FROM (SELECT * FROM `mess` ORDER by `id` DESC LIMIT 20) AS t1 ORDER by `id` ASC
Kostia вне форума Ответить с цитированием
Старый 20.05.2014, 10:53   #8
Parallelogram
Недотепа
Форумчанин
 
Регистрация: 18.01.2011
Сообщений: 174
По умолчанию

Цитата:
Сообщение от DpolenST Посмотреть сообщение
если записи не удаляются и id каждой новой записи увеличивается на "1", то можно так
Код:
$res=mysql_query("SELECT * FROM `mess` WHERE `id` > (SELECT MAX(id) FROM `mess`)-20 ORDER BY `id` ASC");
Спасибо, помогло.
Parallelogram вне форума Ответить с цитированием
Старый 20.05.2014, 15:45   #9
ADSoft
Старожил
 
Регистрация: 25.02.2007
Сообщений: 4,160
По умолчанию

если уж юзать два селекта, то так наверное лучше будет? тогда не важно - с пропусками идут id или нет

Код:
SELECT * FROM (SELECT * FROM `mess` ORDER BY `id` DESC LIMIT 20) ORDER BY `id` ASC
ADSoft на форуме Ответить с цитированием
Старый 21.05.2014, 13:33   #10
Kostia
Участник клуба
 
Аватар для Kostia
 
Регистрация: 21.11.2007
Сообщений: 1,690
По умолчанию

Нужно обязательно AS `alias` для такого подзапроса. см. сообщение 7
Подробнее
Kostia вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Вывод строк из файла в обратном порядке yul_2012 Помощь студентам 1 12.12.2012 20:53
Вывод строк из файла в обратном порядке yul_2012 Помощь студентам 0 11.12.2012 22:44
вывод строки в обратном порядке Delphi BelialL Помощь студентам 7 19.11.2010 18:12
Вывод кольцевого списка в обратном порядке parinoff Паскаль, Turbo Pascal, PascalABC.NET 5 22.11.2008 12:03