imho.ws
IMHO.WS  

Вернуться   IMHO.WS > Веб-мастеру > Веб-программирование
Опции темы
Старый 31.03.2004, 11:47     # 1
KittenCom
Junior Member
 
Аватар для KittenCom
 
Регистрация: 26.03.2004
Сообщения: 70

KittenCom Путь к славе только начался
Arrow Вывод новостей.SQL!Постраничный вывод на экран с базы данных MySQL

Вот взялась делать поэкранный вывод новостей с базы MySQL даже не знаю с чего начать.....видимо может чего почитать надо а может кто совет дельный даст про SQL и вывод на экран..
Просто я пишу извраты на php я и сейчас могу его написать но думаю может чего по проще посоветуюете?
KittenCom вне форума  
Старый 31.03.2004, 12:09     # 2
Merlin Cori
Moderator
 
Аватар для Merlin Cori
 
Регистрация: 29.04.2002
Адрес: Moscow
Пол: Male
Сообщения: 2 980

Merlin Cori СуперБогMerlin Cori СуперБогMerlin Cori СуперБог
Merlin Cori СуперБогMerlin Cori СуперБогMerlin Cori СуперБогMerlin Cori СуперБогMerlin Cori СуперБогMerlin Cori СуперБогMerlin Cori СуперБогMerlin Cori СуперБогMerlin Cori СуперБогMerlin Cori СуперБогMerlin Cori СуперБогMerlin Cori СуперБогMerlin Cori СуперБог
KittenCom
а в чем разница полноэкранного и неполноэкранного
__________________
Есть две бесконечные вещи, Вселенная и глупость.
Впрочем, на счет Вселенной, я не уверен



Вклад IMHO.WS в медицину и науку
Присоединяйтесь!!!!!
Merlin Cori вне форума  
Старый 31.03.2004, 12:12     # 3
KittenCom
Junior Member
 
Аватар для KittenCom
 
Регистрация: 26.03.2004
Сообщения: 70

KittenCom Путь к славе только начался
НАверное я не корректно вопрос задала. Короче в базе 20 новостей...а я хочу с последним айди выводить по 5 как запрос написать что бы оно знало с какого по какой, откидывая все остальное??
KittenCom вне форума  
Старый 31.03.2004, 12:19     # 4
Merlin Cori
Moderator
 
Аватар для Merlin Cori
 
Регистрация: 29.04.2002
Адрес: Moscow
Пол: Male
Сообщения: 2 980

Merlin Cori СуперБогMerlin Cori СуперБогMerlin Cori СуперБог
Merlin Cori СуперБогMerlin Cori СуперБогMerlin Cori СуперБогMerlin Cori СуперБогMerlin Cori СуперБогMerlin Cori СуперБогMerlin Cori СуперБогMerlin Cori СуперБогMerlin Cori СуперБогMerlin Cori СуперБогMerlin Cori СуперБогMerlin Cori СуперБогMerlin Cori СуперБог
выводишь в цикле, выбираешь сортированными ORDER BY поле ASC (это от a до z) или DESC (это в обратном порядке)
__________________
Есть две бесконечные вещи, Вселенная и глупость.
Впрочем, на счет Вселенной, я не уверен



Вклад IMHO.WS в медицину и науку
Присоединяйтесь!!!!!
Merlin Cori вне форума  
Старый 31.03.2004, 12:34     # 5
medved2002
Guest
 
Сообщения: n/a

ORDER BY айди DESC LIMIT 0, 5
 
Старый 31.03.2004, 12:54     # 6
Vaulter
Guest
 
Сообщения: n/a

$start вычисляешь исходя из страницы которую надо вывести
PHP код:
$start=5*($page-1);
ORDER BY date DESC LIMIT $start,
 
Старый 31.03.2004, 18:39     # 7
Goryn
::VIP::
 
Аватар для Goryn
 
Регистрация: 06.03.2003
Адрес: DZ, LBP, Moscow
Пол: Male
Сообщения: 633

Goryn Имеются все основания чтобы гордиться собойGoryn Имеются все основания чтобы гордиться собойGoryn Имеются все основания чтобы гордиться собойGoryn Имеются все основания чтобы гордиться собойGoryn Имеются все основания чтобы гордиться собойGoryn Имеются все основания чтобы гордиться собойGoryn Имеются все основания чтобы гордиться собойGoryn Имеются все основания чтобы гордиться собойGoryn Имеются все основания чтобы гордиться собой
А вот еще интересный вопрос: как определить количество страниц, если заранее не известно количество выводимых новостей (например в результате поиска).

Самое простое, это сделать сначала запрос с аналогичным условием, но с COUNT() и, естественно, без LIMIT.

Но это же громоздко. Может, кто подскажет более красивое решение.
__________________
Меня многие спрашивают, как я живу с тремя головами... На самом деле, я триедин, как Великие Бобы!
Goryn вне форума  
Старый 31.03.2004, 18:45     # 8
medved2002
Guest
 
Сообщения: n/a

Смотря какая версия Мускула
FOUND_ROWS()
FOUND_ROWS() по русски

Последний раз редактировалось medved2002; 31.03.2004 в 18:56.
 
Старый 01.04.2004, 11:17     # 9
KittenCom
Junior Member
 
Аватар для KittenCom
 
Регистрация: 26.03.2004
Сообщения: 70

KittenCom Путь к славе только начался
Goryn А может надо сделать просто поле id ?порядковый номер?автоинкремент?По-моему самый лучший вариант.
KittenCom вне форума  
Старый 01.04.2004, 11:43     # 10
medved2002
Guest
 
Сообщения: n/a

А если запись удалили? Автоинкримент не пересчитается
 
Старый 01.04.2004, 12:22     # 11
KittenCom
Junior Member
 
Аватар для KittenCom
 
Регистрация: 26.03.2004
Сообщения: 70

KittenCom Путь к славе только начался
ну тогда может insert надо сделать?в боле id?
KittenCom вне форума  
Старый 01.04.2004, 12:29     # 12
medved2002
Guest
 
Сообщения: n/a

Чего?
 
Старый 01.04.2004, 13:20     # 13
KittenCom
Junior Member
 
Аватар для KittenCom
 
Регистрация: 26.03.2004
Сообщения: 70

KittenCom Путь к славе только начался
medved2002
написать скрипт для того что бы в поле 'ID' была вставленна нумерация

INSERT INTO tbl_name (ID) VALUES($c);
$c=1+$c;
по-моему так и запусти выполнение этого запроса в цикле...
KittenCom вне форума  
Старый 01.04.2004, 13:26     # 14
medved2002
Guest
 
Сообщения: n/a

Это будет глупо. Потому что
1 - тебе придется перелопачивать всю таблицу каждый раз когда кто либо удалит запись.
2 - В СУБД нет такого понятия 1, вторая ... последняя запись в таблице
 
Старый 01.04.2004, 13:29     # 15
KittenCom
Junior Member
 
Аватар для KittenCom
 
Регистрация: 26.03.2004
Сообщения: 70

KittenCom Путь к славе только начался
зачем каждый раз тебе придется перелопачивать всю таблицу каждый раз когда кто либо удалит запись?
один раз выполнится этот скриптик....а потом при добавлении записи...будит и инеремент срабатывать.
я не аз в php & MySQL пишу в основном извраты. так что возможно и ошибаюсь
KittenCom вне форума  
Старый 01.04.2004, 13:40     # 16
medved2002
Guest
 
Сообщения: n/a

Обьясняю на пальцах

У тебя таблица:
1 Вася
2 Петя
3 Сергей
4 Коля

Удаляем Петю, получаем

1 Вася
3 Сергей
4 Коля

Порядок нарушен? Нарушен для того что бы его востановить потребуется перелопатить всю таблицу
 
Старый 01.04.2004, 13:45     # 17
KittenCom
Junior Member
 
Аватар для KittenCom
 
Регистрация: 26.03.2004
Сообщения: 70

KittenCom Путь к славе только начался
точно, не подумала.ну можно тогда сделать что бы каждый раз при удалении..... происходил Update ячеек id
KittenCom вне форума  
Старый 01.04.2004, 14:08     # 18
medved2002
Guest
 
Сообщения: n/a

Я уже написал что перелопачивать при удалении записе всю таблицу глупо, ладно у тебя там 3 записи, а если три миллиона?
 
Старый 01.04.2004, 14:17     # 19
Hubbitus
мод
IMHO Кодер-200(6,7,8)
 
Регистрация: 29.03.2003
Адрес: Saint-Petersburg, Russia
Пол: Male
Сообщения: 2 734

Hubbitus Бог с наворотамиHubbitus Бог с наворотами
Hubbitus Бог с наворотамиHubbitus Бог с наворотамиHubbitus Бог с наворотамиHubbitus Бог с наворотамиHubbitus Бог с наворотамиHubbitus Бог с наворотамиHubbitus Бог с наворотамиHubbitus Бог с наворотамиHubbitus Бог с наворотамиHubbitus Бог с наворотамиHubbitus Бог с наворотамиHubbitus Бог с наворотами
IMHO, SELECT SQL_CALC_FOUND_ROWS - самый правильный и самый БЫСТРЫЙ способ, вот только проблема что он поддерживается в MySQL начиная с версии 4.0...
__________________
Я делаю Линукс! Присоединяйтесь к свободным людям!

Связаться со мной всегда можно по джабберу: Hubbitus@jabber.ru
Pahan-Hubbitus.
Hubbitus вне форума  

Опции темы

Ваши права в разделе
Вы НЕ можете создавать новые темы
Вы не можете отвечать в темах.
Вы НЕ можете прикреплять вложения
Вы НЕ можете редактировать свои сообщения

BB код Вкл.
Смайлы Вкл.
[IMG] код Выкл.
HTML код Выкл.

Быстрый переход


Часовой пояс GMT +4, время: 10:40.




Powered by vBulletin® Version 3.8.5
Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.