diskusne forum (so stromovou strukturou)
Chcel by som vytvorit diskusne forum so stromovou strukturou a zaujimala by ma len struktura databazy - napadla ma takato vec:
v databaza je
* zoznam tem (kazda ma svoje id)
* zoznam prispevkov (kazdy svoje id + id_p == id nadradeneho prispevku, ak nie je ziadny zadradeny tak to bude id temy)
cinnost:
* podla datumu vyberiem prvy prispevok s id_p prisluchajuci k danej teme
* podla datumu vyberiem prvy prispevok s id_p priskluchajuci k poslednemu prispevku
* rekurzia.....
Nie je tento pristup trosicku narocny na dotazy pre databazu? Pri 30 reakciach by sa jednalo asi o 31 dotazov (asi by zalezalo aj od formy zanorenia). (neviem ci je to vela alebo malo)
Určitě ne. Třeba los by to měl vymyšlené do minuty.
host ví o nějakém již hotovém na www.interval.cz je docela prima.
Noo...vies...na intervale je toho vela a prvy clanok co som tam nasiel pouziva ten isty postup ako som napisal ja
Tady bych viděl konflikt. Konkrétně když budeš příspěvku bez rodiče přiřazovat id tématu... Dejme tomu že téma má id 30 a v tabulce s příspěvkama máš příspěvek taky s id 30. Jak poznáš jestli je příspěvek s id_p == 30 "potomkem" příspěvku nebo úplně nadřazený? Já osobně dávám příspěvkům, které némají rodiče id_p s hodnotou -1. Sice přijdeš o polovinu hodnot protože nemůže být id_p unsigned ale můžeš to kompenzovat tak že bude prostě integer o jeden bit delší.
/* EDIT: tak tohle platí jen pokud je jedno téma Při více témat asi bude nutný mít zlášť sloupec pro téma a zvlášť pro rodičovský příspěvek (no to zní fakt blbě )
Mozno som to nenapisal celkom jednoznacne ale tento princip som raz pouzil na menu so stromovou strukturou (polozky menu ulozene v MySQL nasledne generovane pomocou JS) a ziadny konflikt tam nebol.
Teda je pravda ze tam bola len jedna tabulka a tu su 2 ale nebudem sa nad tym takto neskoro zamyslat.
Ja uz len cakam kedy pride Los a nauci ma to
EDIT: Mitch ...uz mi to doslo co si mi chcel povedat a mas pravdu.
Určite nie ťahať dáta rekurzívne z databázy. Najjednoduchšie je vytiahnuť všetky riadky jedným selectom podľa toho, ku ktorej téme patria (id_tema), a z nich potom vytvoriť štruktúru (napr. nejako takto: http://www.sitepoint.com/forums/showthread.php?t=21 5857).
no ze som na to sam neprisiel ...ale nie..vazne dik