dk1342
18.12.2009, 17:12:21
Witam, po pierwsze nie chodzi mi o kod (gotowiec) tylko chce aby ktoś kto już robił własne forum mi to wyjaśnił.
Mam np. dział forum "cos" w tym dziale mam 3 tematy i na jakiej zasadzie zrobić że jeśli ktoś odpisze w pierwszym temacie który jest na liście trzeci (najstarszy temat) to pójdzie on na samą górę ? Nie wiem czy dokładnie wytłumaczyłem . Jeśli nie to pisać spróbuje inaczej.
Spawnm
18.12.2009, 17:14:27
zapisujesz w tabeli tematy w polu czas czas ostatnio dodanego postu, potem wybierasz tematy z order by czas desc
dk1342
18.12.2009, 17:16:02
I jeśli ktoś napisze post, to updatuje te pole z czasem ?
Spawnm
18.12.2009, 17:23:58
tak
dk1342
18.12.2009, 17:33:36
//
Problem rozwiazany
A pole data w mysql ma być typem date czy time ? wprowadzam tam time(); wiec chyba time nie ?
Spawnm
18.12.2009, 17:38:58
ale te tematy mają tą samą date

dodatkowo zapisuj to co daje time() a nie date()
dk1342
18.12.2009, 17:41:43
Tak tak za uwarzyłem i poprawiłem zmieniłem typ pola date na timestap a date zapisuje time(); Działa, teraz dołączę posty i dalej będę testować. Dzięki.
lukasz_os
18.12.2009, 17:41:47
W tabeli ustaw zamiast typu Date daj Datetime. Wtedy do bazy wprowadzaj dane tak: 'YYYY-MM-DD HH:MM:SS' i nie będziesz miał problemów. Potem sortuj wyniki po dacie i id (w razie jakby tematy miały ten sam czas).
dk1342
18.12.2009, 17:42:56
A jak będzie wyglądało sortowanie po dacie i id ? order by 'id' and 'date' ?
lukasz_os
18.12.2009, 17:44:30
SELECT * FROM 'tematy' ORDER BY date,id
dk1342
18.12.2009, 17:48:17
Ok, tylko że źle sortuje
8||temat 1||tresc temat 1||2009-12-18 17:39:11
10||temat 3||tresc temat 3||2009-12-18 17:39:26
9||temat 2||tresc temat 2||2009-12-18 17:46:10
Jak widać temat 2 ma najnowszą date więc powinien być na samej górze, potem temat 3 i temat 1
lukasz_os
18.12.2009, 17:49:56
Daj na końcu zapytania DESC.
dk1342
18.12.2009, 17:50:28
Mam desc, próbowałem też zmienić na asc ale nic się nie działo i dalej tak samo:
$zapytaj = mysql_query('SELECT * FROM `forum_tematy` order by `data`,`id` desc');
edit: poszukałem na google i tak jest poprawnie:
$zapytaj = mysql_query('SELECT * FROM `forum_tematy` order by `data` desc,`id` desc');
działa
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę
kliknij tutaj.