![]() ![]() |
Post
#1
|
|
|
Grupa: Zarejestrowani Postów: 10 Pomógł: 0 Dołączył: 21.01.2005 Ostrzeżenie: (0%)
|
Napisałem swoje forum i mam problem z posegregowaniem wiadomości.
Wiadomości zapisywane są w następujący sposób: ID (ID w bazie danych, auto_increment) A: to jest ID głównego wątku B: jeżeli jest to główny wątek, to B=0, jeżeli odpowiedź na jakiś wątek, to B=ID wątka, na który odpowiadamy. DATA: data i godzina dodania wątku Przykład (wątki dodawane według daty): ID:84 A:84 B:0 DATA:2005-01-19 23:09:00 //wątek główny ID:85 A:84 B:84 DATA:2005-01-19 23:36:45 //odpowiedź na ID84 ID:92 A:84 B:85 DATA:2005-01-20 21:18:48 //odpowiedź na ID85 ID:93 A:84 B:92 DATA:2005-01-20 21:22:31 //odpowiedź na ID92 ID:94 A:84 B:84 DATA:2005-01-20 23:58:10 //odpowiedź na ID84 ID:103 A:84 B:84 DATA:2005-01-21 15:29:06 //odpowiedź na ID84 ID:116 A:84 B:93 DATA:2005-01-22 23:37:19 //odpowiedź na ID93 ID:119 A:84 B:116 DATA:2005-01-22 23:41:49 //odpowiedź na ID116 ID:142 A:84 B:94 DATA:2005-01-24 08:57:03 //odpowiedź na ID94 Chciałbym, aby były wątki wyświetlone tak: ID:84 A:84 B:0 DATA:2005-01-19 23:09:00 //wątek główny ID:85 A:84 B:84 DATA:2005-01-19 23:36:45 //odpowiedź na ID84 ID:94 A:84 B:84 DATA:2005-01-20 23:58:10 //odpowiedź na ID84 ID:103 A:84 B:84 DATA:2005-01-21 15:29:06 //odpowiedź na ID84 ID:92 A:84 B:85 DATA:2005-01-20 21:18:48 //odpowiedź na ID85 ID:93 A:84 B:92 DATA:2005-01-20 21:22:31 //odpowiedź na ID92 ID:116 A:84 B:93 DATA:2005-01-22 23:37:19 //odpowiedź na ID93 ID:142 A:84 B:94 DATA:2005-01-24 08:57:03 //odpowiedź na ID94 ID:119 A:84 B:116 DATA:2005-01-22 23:41:49 //odpowiedź na ID116 To był przykład dla jednego wątku z odpowiedziami (gdy wchodzi się w przegląd wątku), gdy chcę zobaczyć wszystkie wątki, chciałbym, aby segregacja była jak wyżej, z tym, żeby przy segregacji było uwzględniana starość wątku, po najnowszej odpowiedzi. Wiem, że to nie jest łatwe - próbuję zrobić to już piąty dzień, ale nic mi nie wychodzi. Za słabo znam MySQL, bo php opanowałem... (IMG:http://forum.php.pl/style_emoticons/default/sadsmiley02.gif) Na razie zrobiłem coś takiego: Kod SELECT t1.*, max(t2.data) AS md FROM forum AS t1, forum AS t2 WHERE t1.a='$a' GROUP BY t1.id ORDER BY md DESC, b ale za bardzo ine chce działać poprawnie Ten post edytował george_bush1 24.01.2005, 14:42:16 |
|
|
|
![]() ![]() |
|
Aktualny czas: 20.12.2025 - 14:11 |