Форум АНТИЧАТ

Форум АНТИЧАТ (https://forum.antichat.xyz/index.php)
-   PHP, PERL, MySQL, JavaScript (https://forum.antichat.xyz/forumdisplay.php?f=37)
-   -   Показ новостей в обратном порядке. php. (https://forum.antichat.xyz/showthread.php?t=95098)

Ru}{eeZ 06.12.2008 20:40

Показ новостей в обратном порядке. php.
 
Маюсь...

Допустим
$maxNews = 5;
count($id) = 100;
$_GET['page'] = 2;

новости от 1 и выше
PHP код:

for($i $maxNews $_GET['page'] - $maxNews$i $maxNews $_GET['page']; $i++) { 

новости от большего к меньшему (недополучается). Тут получается, что новости идут от 100, на первой странице 4 результата, на остальных нормально - 5, а новость под номером 1 вообще не отображается на последней странице (т.е. последняя под номером 2)
PHP код:

    for($i count($id) - $maxNews $_GET['page'] + $maxNews$i count($id) - $maxNews $_GET['page']; $i--) { 


Vid0k 06.12.2008 20:44

а не легче мускулом отсортировать?!
SELECT * FROM news sort by id desc
вроде так поправьте если ошибся

Ru}{eeZ 06.12.2008 20:45

Цитата:

Сообщение от Vid0k
а не легче мускулом отсортировать?!
SELECT * FROM news sort by id desc
вроде так поправьте если ошибся

без мускулов
*без комментариев*

Pashkela 06.12.2008 21:27

А не поленюсь и повторю еще раз - в цикле считать (count) нельзя, особенно когда много чего считать надо

Ru}{eeZ 06.12.2008 21:39

Цитата:

Сообщение от Pashkela
А не поленюсь и повторю еще раз - в цикле считать (count) нельзя, особенно когда много чего считать надо

так понятнее, естественно, что если о производительности заботиться - я бы вынес, хотя в любом случае бы это сделать, но всётаки хотелось бы получить ответ по теме

Gifts 06.12.2008 23:33

Ru}{eeZ Ключевой вопрос - как понумерован массив $id. Первый элемент имеет индекс 1 или 0? Просто в твоем варианте все в общем то верно, для проверки:

PHP код:

<pre><?
$maxNews 
5;
$id=array_fill(1,100,'Тестовый массив');

for(
$i count($id) - $maxNews $_GET['page'] + $maxNews$i count($id) - $maxNews $_GET['page']; $i--) 
{ echo 
$i."\r\n"; }

Будет выводить на первой странице номера 100-95, на последней 5-1. Если же массив с нуля, то просто добавить -1 в начальное значение и в условие

vikseriq 07.12.2008 00:47

А они равняются на Павла Дурова - только он им гонит, что аякс умеет сортировать ))
Да, я бы мускуль взял. не хочешь Mysql- иди на Oracle, MSSQL, Access на худкон. Благо альтернатива есть )

Ru}{eeZ 07.12.2008 00:53

Gifts, спасибо)
бред, бред... у меня база в .txt
При чём тут Павел Дуров? Ты бы ещё c Лебедовым привёл пример

t4Nk 07.12.2008 03:16

Цитата:

Сообщение от Ru}{eeZ
Gifts, спасибо)
у меня база в .txt

уж лучше имхо, sqlite использовать чем файлы


Время: 22:27