| Форум -> Pages (модуль и блок) -> Сортировка статей | 
| Сортировка статей | 
|---|
| Caladon |  Дата: 28.10.2007, в 21:22 | Сообщение №1 | 
   НовичокПользователь №: 233 Сообщений: 14
 
  
	 
	  | Нужна помощь. 
Как сделать так, чтобы статьи всегда выводились в алфавитном порядке по названию. 
версия слайда: 2.5 Lite 
Заранее спасибо.
  _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ Отредактированно Caladon 28.10.2007 г. в 21:25:53 |  
  | 
 | 
| Serg_pnz |  Дата: 28.10.2007, в 21:54 | Сообщение №2 | 
   АдминистраторПользователь №: 1 Сообщений: 2243
 
  
	 
	  | везде в запросах, где выводятся значения из таблицы slaed_pages, юзай сортировку ORDER BY title ASC |   Не все кальсоны с оторванными пуговицами - брюки. © Serg_pnz 
"...даме водки? Это чистый спирт!" © кот Бегемот |  
  | 
 | 
| Caladon |  Дата: 28.10.2007, в 22:05 | Сообщение №3 | 
   НовичокПользователь №: 233 Сообщений: 14
 
  
	 
	  | | А можно пример для наглядности? А то я в php не очень разбираюсь. |  
  | 
 | 
| Serg_pnz |  Дата: 28.10.2007, в 22:47 | Сообщение №4 | 
   АдминистраторПользователь №: 1 Сообщений: 2243
 
  
	 
	  | Например имеем | Код |  1
  | function main() { 
... 
      $result = $db->sql_query("SELECT pid, title, hometext, date FROM ".$prefix."_pages WHERE cid != '0' AND date <= now() AND active = '1' ORDER BY pid DESC LIMIT $newhomenum"); 
... 
} |  
  
Здесь идет обращение к нашей таблице (смотреть сюда ".$prefix."_pages) 
А чуть дальше по строке идет сортировка по pid - по убыванию (по порядковому номеру добавления в базу ORDER BY pid DESC) 
 
В соответствии с предыдущим постом редактируем | Код |  1
  | function main() { 
... 
      $result = $db->sql_query("SELECT pid, title, hometext, date FROM ".$prefix."_pages WHERE cid != '0' AND date <= now() AND active = '1' ORDER BY title ASC LIMIT $newhomenum"); 
... 
} |  
  
 
И так везде, где есть запрос на таблицу статей. |   Не все кальсоны с оторванными пуговицами - брюки. © Serg_pnz 
"...даме водки? Это чистый спирт!" © кот Бегемот |  
  | 
 | 
| Caladon |  Дата: 29.10.2007, в 09:12 | Сообщение №5 | 
   НовичокПользователь №: 233 Сообщений: 14
 
  
	 
	  | | Помогло! Очень благодарен. |  
  | 
 | 
| kirBI |  Дата: 27.11.2007, в 17:08 | Сообщение №6 | 
   УчастникПользователь №: 244 Сообщений: 69
 
  
	 
	  | | Код |  1
  | Классная штучка, Спасибо Serg_pnz |  
  |  
  | 
 | 
| Berkut |  Дата: 03.01.2008, в 17:02 | Сообщение №7 | 
   ПользовательПользователь №: 285 Сообщений: 27
 
  
	 
	  | Нужна сортировка статей и категорий не по id а по алфавиту. Пытался прописывать ORDER BY title ASC, но безрезультатно. Может кто поможет или скинет свой индекс.пхп. Вот аригинал индекс.пхп 2.5 лайт 
 
/*удалено админом*/
  _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ Отредактированно Serg_pnz 03.01.2008 г. в 17:11:47 |  
  | 
 | 
| Serg_pnz |  Дата: 03.01.2008, в 17:12 | Сообщение №8 | 
   АдминистраторПользователь №: 1 Сообщений: 2243
 
  
	 
	  | Berkut, пакуем в zip и прикрепляем к сообщению!    |   Не все кальсоны с оторванными пуговицами - брюки. © Serg_pnz 
"...даме водки? Это чистый спирт!" © кот Бегемот |  
  | 
 | 
| Serg_pnz |  Дата: 03.01.2008, в 19:20 | Сообщение №9 | 
   АдминистраторПользователь №: 1 Сообщений: 2243
 
  
	 
	  | Индекс цепляю. (внесены так же изменения для категорий).  
Изменения для сортировки категорий и подкатегорий так же вносились тут function categories, а конкретно тут| Код |  1
  | if (!is_array($massiv)) { 
                $result = $db->sql_query("SELECT cid, title, description, parentid FROM ".$prefix."_pages_categories ".$where." ORDER BY title ASC "); 
                while (list($cid, $title, $description, $parentid) = $db->sql_fetchrow($result)) $massiv[] = array($cid, $title, $description, $parentid); 
        } 
        if (!is_array($massiv2)) { 
                $result = $db->sql_query("SELECT cid, title, description, parentid FROM ".$prefix."_pages_categories ORDER BY title ASC"); 
                while (list($cid, $title, $description, $parentid) = $db->sql_fetchrow($result)) $massiv2[] = array($cid, $title, $description, $parentid); 
        } |  
 
  _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ Отредактированно Serg_pnz 03.01.2008 г. в 19:27:43
  Прикрепленные файлы:
   Скачать: 4.79 KB |   Не все кальсоны с оторванными пуговицами - брюки. © Serg_pnz 
"...даме водки? Это чистый спирт!" © кот Бегемот |  
  | 
 | 
| Berkut |  Дата: 03.01.2008, в 19:33 | Сообщение №10 | 
   ПользовательПользователь №: 285 Сообщений: 27
 
  
	 
	  | Теперь всё сортируется!!! Огромнейшее спасибо!!! Чтоб я без вас делал?!!
  _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ Отредактированно Berkut 03.01.2008 г. в 19:38:37 |  
  | 
 | 
| Serg_pnz |  Дата: 03.01.2008, в 19:51 | Сообщение №11 | 
   АдминистраторПользователь №: 1 Сообщений: 2243
 
  
	 
	  | давным-давно я ирокез выстригал...    |   Не все кальсоны с оторванными пуговицами - брюки. © Serg_pnz 
"...даме водки? Это чистый спирт!" © кот Бегемот |  
  | 
 | 
| zakandak |  Дата: 11.03.2008, в 23:19 | Сообщение №12 | 
   ПользовательПользователь №: 339 Сообщений: 34
 
  
	 
	  | Сделал блок pages как сдесь написано с упорядочиванием по алфавиту, но почему то не работает. ПОдправьте пожалуйста че не так. Очень надо. 
| Код |  1
  | <?php 
if (!defined('BLOCK_FILE')) { 
   Header("Location: ../index.php"); 
   exit; 
} 
 
global $prefix, $db; 
$strip = 25; 
$result = $db->sql_query("SELECT pid, title, hometext, date FROM ".$prefix."_pages WHERE cid != '0' AND date <= now() AND active = '1' ORDER BY title ASC LIMIT $newhomenum"); 
while(list($pid, $title) = $db->sql_fetchrow($result)) { 
   $linkstrip = cutstr($title, $strip); 
   $content .= "<table cellspacing=\"0\" cellpadding=\"1\" border=\"0\"><tr><td><img src=\"images/blocks/Pages.gif\" title=\"$title\"></td><td><a href=\"index.php?name=Pages&op=page&pid=$pid\" title=\"$title\">$linkstrip</a></td></tr></table>"; 
} 
?> |  
 
  _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ Отредактированно zakandak 11.03.2008 г. в 23:22:24 |  
  | 
 | 
| Serg_pnz |  Дата: 11.03.2008, в 23:28 | Сообщение №13 | 
   АдминистраторПользователь №: 1 Сообщений: 2243
 
  
	 
	  | Не работает что? не выводится? Имхо это лишнее (не тестил)  
 
какой лимит? "зерро"?? |   Не все кальсоны с оторванными пуговицами - брюки. © Serg_pnz 
"...даме водки? Это чистый спирт!" © кот Бегемот |  
  | 
 | 
| zakandak |  Дата: 11.03.2008, в 23:37 | Сообщение №14 | 
   ПользовательПользователь №: 339 Сообщений: 34
 
  
	 
	  |  | 
 | 
| zakandak |  Дата: 28.05.2008, в 00:39 | Сообщение №15 | 
   ПользовательПользователь №: 339 Сообщений: 34
 
  
	 
	  | Есть код последних статей, нужно его переделать в популярные. Добавляю Hits после Order By как прочитал. Но че то не работает, подправьте пожалуйста. 
 
 
| Код |  1
  | <?php 
if (!defined('BLOCK_FILE')) { 
   Header("Location: ../index.php"); 
   exit; 
} 
 
global $prefix, $db; 
$strip = 25; 
$result = $db->sql_query("SELECT pid, title FROM ".$prefix."_pages ORDER BY pid DESC LIMIT 5"); 
while(list($pid, $title) = $db->sql_fetchrow($result)) { 
   $linkstrip = cutstr($title, $strip); 
   $content .= "<table cellspacing=\"0\" cellpadding=\"1\" border=\"0\"><tr><td><img src=\"images/blocks/Pages.gif\" title=\"$title\"></td><td><a href=\"index.php?name=Pages&op=page&pid=$pid\" title=\"$title\">$linkstrip</a></td></tr></table>"; 
} 
?> |  
  |  
  | 
 | 
| Serg_pnz |  Дата: 28.05.2008, в 02:31 | Сообщение №16 | 
   АдминистраторПользователь №: 1 Сообщений: 2243
 
  
	 
	  | | ORDER BY hits DESC |   Не все кальсоны с оторванными пуговицами - брюки. © Serg_pnz 
"...даме водки? Это чистый спирт!" © кот Бегемот |  
  | 
 | 
| zakandak |  Дата: 28.05.2008, в 16:08 | Сообщение №17 | 
   ПользовательПользователь №: 339 Сообщений: 34
 
  
	 
	  | Делаю так пишет проблема с блоком, версия 2.5 
 
| Код |  1
  | <?php 
if (!defined('BLOCK_FILE')) { 
   Header("Location: ../index.php"); 
   exit; 
} 
 
global $prefix, $db; 
$strip = 25; 
$result = $db->sql_query("SELECT pid, title FROM ".$prefix."_pages  
 
ORDER BY hits DESK 5"); 
while(list($pid, $title) = $db->sql_fetchrow($result)) { 
   $linkstrip = cutstr($title, $strip); 
   $content .= "<table cellspacing=\"0\" cellpadding=\"1\"  
 
border=\"0\"><tr><td><img src=\"images/blocks/Pages.gif\"  
 
title=\"$title\"></td><td><a  
 
href=\"index.php?name=Pages&op=page&pid=$pid\"  
 
title=\"$title\">$linkstrip</a></td></tr></table>"; 
} 
?> |  
 
  _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ Отредактированно zakandak 28.05.2008 г. в 16:10:52 |  
  | 
 | 
| Serg_pnz |  Дата: 28.05.2008, в 16:15 | Сообщение №18 | 
   АдминистраторПользователь №: 1 Сообщений: 2243
 
  
	 
	  | | DESK - "си" должно быть, а не "ка" |   Не все кальсоны с оторванными пуговицами - брюки. © Serg_pnz 
"...даме водки? Это чистый спирт!" © кот Бегемот |  
  | 
 | 
| Serg_pnz |  Дата: 28.05.2008, в 16:19 | Сообщение №19 | 
   АдминистраторПользователь №: 1 Сообщений: 2243
 
  
	 
	  | | и Limit еще забыл |   Не все кальсоны с оторванными пуговицами - брюки. © Serg_pnz 
"...даме водки? Это чистый спирт!" © кот Бегемот |  
  | 
 | 
| zakandak |  Дата: 28.05.2008, в 16:23 | Сообщение №20 | 
   ПользовательПользователь №: 339 Сообщений: 34
 
  
	 
	  | хоть убей не работает  
 
| Код |  1
  | <?php 
if (!defined('BLOCK_FILE')) { 
   Header("Location: ../index.php"); 
   exit; 
} 
 
global $prefix, $db; 
$strip = 25; 
$result = $db->sql_query("SELECT pid, title FROM ".$prefix."_pages  
 
ORDER BY hits DESC Limit 5"); 
while(list($pid, $title) = $db->sql_fetchrow($result)) { 
   $linkstrip = cutstr($title, $strip); 
   $content .= "<table cellspacing=\"0\" cellpadding=\"1\"  
 
border=\"0\"><tr><td><img src=\"images/blocks/Pages.gif\"  
 
title=\"$title\"></td><td><a  
 
href=\"index.php?name=Pages&op=page&pid=$pid\"  
 
title=\"$title\">$linkstrip</a></td></tr></table>"; 
} 
?> |  
 
  _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ Отредактированно zakandak 28.05.2008 г. в 16:24:46 |  
  | 
 | 
 | 
 Вы не можете ответить в тему анонимно, пожалуйста, войдите или зарегистрируйтесь!
 
  |