Форум Flasher.ru
Ближайшие курсы в Школе RealTime
Список интенсивных курсов: [см.]  
  
Специальные предложения: [см.]  
  
 
Блоги Правила Справка Пользователи Календарь Сообщения за день
 

Вернуться   Форум Flasher.ru > Архив Flasher.ru > Программирование > PHP

Версия для печати  Отправить по электронной почте    « Предыдущая тема | Следующая тема »  
Опции темы Опции просмотра
 
Создать новую тему  
Старый 28.01.2004, 22:26
silgd вне форума Посмотреть профиль Отправить личное сообщение для silgd Посетить домашнюю страницу silgd Найти все сообщения от silgd
  № 1  
silgd
 
Аватар для silgd

Регистрация: Aug 2002
Адрес: Israel
Сообщений: 35
Отправить сообщение для silgd с помощью ICQ
Question Cортировать сообшения...

Hey guys!

ести Tree-Structure форум, как мне можно сортировать сообшения
наприм:
есть сообшение недельной давности, само сабой оно находится не в начале форума а по середине, когда кто то ответил на ето сообшение оно сразу становится первим в списке вместе со своими ответами(reply)

* что то похожее как в етом форуме
Please Help!
__________________
EVIL-HORSE

Старый 29.01.2004, 00:15
juggy вне форума Посмотреть профиль Отправить личное сообщение для juggy Посетить домашнюю страницу juggy Найти все сообщения от juggy
  № 2  
juggy
 
Аватар для juggy

Регистрация: Feb 2001
Адрес: LJ/~aleshru
Сообщений: 4,778
Отправить сообщение для juggy с помощью ICQ Отправить сообщение для juggy с помощью MSN Отправить сообщение для juggy с помощью Yahoo Отправить сообщение для juggy с помощью Skype™
[list=1][*]Структуру таблицы[*]Код форума[*]Немного мозгов[*]Немного мыслей[*]Всё в этот топик немедленно![/list=1]
__________________
Что за дурь? 50 символов в подписи!?

Старый 29.01.2004, 00:35
silgd вне форума Посмотреть профиль Отправить личное сообщение для silgd Посетить домашнюю страницу silgd Найти все сообщения от silgd
  № 3  
silgd
 
Аватар для silgd

Регистрация: Aug 2002
Адрес: Israel
Сообщений: 35
Отправить сообщение для silgd с помощью ICQ
MySQL Table:
------------------
parent
poster
title
body
postedDate
postedTime
postid (auto_increment)
forumId
------------------

Tree function:
PHP код:
# TREE
function get_tree($parent_id 0$prefix "") {
    global 
$out;
    
$query "SELECT * FROM madforum_posts WHERE forumId = '$_GET[forumId]' AND parent = '$parent_id' ORDER BY postid DESC, postedDate DESC";
    
$result mysql_query($query);
    while (
$row mysql_fetch_array($result)) {
    
$out .=  "<tr class=\"msgtd\"><td>".$prefix."<img src=\"img/bulet.gif\"> <a href=javascript:showComm("$row['postid'] .")>".$row['title']."</a> <font class=\"poster\">".$row['poster']."</font></td><td align=left><font class=\"poster\">".$row['postedDate']." ".$row['postedTime']."</font></td></tr><tr><td id=CommTD_"$row['postid'] ." style=display:none;padding-right:15px; colspan=2 class=\"msgtd\"><img src=../images/dot.gif width=1 height=10><br><hr size=1 width=100% color=#cccccc>".preg_replace('/\n/i''<br />'$row['body'])."<hr size=1 width=100% color=#cccccc><img src=../images/dot.gif width=1 height=10><br></td></tr>";
    
get_tree($row['postid'], $prefix."<img src=../images/dot.gif width=15 height=1>");
    }
return 
$out;

Forum Index Page:
PHP код:
# INCLUDE REQUIRED FUNCTIONS
include("lib/db_fns.php");
include(
"lib/header.php");
include(
"lib/footer.php");
include(
"lib/tree_fns.php");

# MySQL QUERY
$ResultForumName mysql_query("SELECT forumTitle FROM madforum_forums WHERE forumId = '$_GET[forumId]'");
$RowForumName mysql_fetch_array($ResultForumName);

# MAIN PROGRAMM CALCULATION
header_frm("My Forum: ".$RowForumName[forumTitle]);
echo 
"<b>".$RowForumName[forumTitle]."</b><p>";
echo 
"<table cellpadding=\"1\" cellspacing=\"0\" width=\"100%\" align=\"right\" border=\"0\">";
echo 
get_tree();
echo 
"</table>";
footer(); 
Дальше выходит вот так:

1
|
+ - 2
| |
| + - 3
| + - 4
|
+ - 5
....
__________________
EVIL-HORSE


Последний раз редактировалось silgd; 29.01.2004 в 00:41.
Старый 29.01.2004, 00:48
silgd вне форума Посмотреть профиль Отправить личное сообщение для silgd Посетить домашнюю страницу silgd Найти все сообщения от silgd
  № 4  
silgd
 
Аватар для silgd

Регистрация: Aug 2002
Адрес: Israel
Сообщений: 35
Отправить сообщение для silgd с помощью ICQ
Код:
MySQL Table:
------------------
CREATE TABLE `madforum_posts` (
  `parent` int(11) NOT NULL default '0',
  `poster` varchar(20) NOT NULL default '',
  `title` varchar(58) NOT NULL default '',
  `body` longtext,
  `postedDate` varchar(10) default NULL,
  `postedTime` varchar(5) default NULL,
  `postid` int(10) unsigned NOT NULL auto_increment,
  `forumId` int(10) default NULL,
  PRIMARY KEY  (`postid`)
) TYPE=MyISAM AUTO_INCREMENT=9 ;
------------------
__________________
EVIL-HORSE

Старый 29.01.2004, 12:41
advocat вне форума Посмотреть профиль Отправить личное сообщение для advocat Посетить домашнюю страницу advocat Найти все сообщения от advocat
  № 5  
advocat
 
Аватар для advocat

Регистрация: Feb 2001
Адрес: Киев
Сообщений: 649
Отправить сообщение для advocat с помощью ICQ
я только одного не пойму, что мешает написать тебе нормальный клас, и не делать тучу запросов к БД, а обрабатывать массивы ? Соответственно и проблем меньне, да и нетолько такую задачу решить можно ...
__________________
заходите в гости
advocat, это не по професия - это диагноз!
Обычно в PHP обитаю ...

Создать новую тему   Часовой пояс GMT +4, время: 01:41.
Быстрый переход
  « Предыдущая тема | Следующая тема »  

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

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


 


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


Copyright © 1999-2008 Flasher.ru. All rights reserved.
Работает на vBulletin®. Copyright ©2000 - 2026, Jelsoft Enterprises Ltd. Перевод: zCarot
Администрация сайта не несёт ответственности за любую предоставленную посетителями информацию. Подробнее см. Правила.