Autor | Zpráva | ||
---|---|---|---|
Luky Profil |
#1 · Zasláno: 8. 8. 2010, 12:20:34
Zdravím,
Možná by se to spíše hodilo do kategorie: ,, Jak něco udělat" (přinejhorším to tam dejte)... Udělal jsem si diskusi a nevím jak udělat reagování na zprávu. Do databáze zapisuji ID zprávy (předmět, text, datum ...). Když dá uživatel reagovat na zprávu, kterou napsal třeba Franta, tak si zapíšu ID zprávy kterou píše a do jiného sloupce, na kterou reaguje (sloupec je při normální zprávě prázdný a tak se zprávy ukazují normálně, když tam něco je, ukáží se jako reagovaná zpráva - jiný styl). Z databáze vypisuji data podle nejnovějších zpráv, a pokud uživatel reaguje na zprávu třetí od začátku, tak se ukáže logicky jako první ne pod zprávou na kterou reagoval. Jak to mám udělat, aby se zpráva ukázala pod ní? Budu moc rád za každou odpověď. |
||
Kajman_ Profil * |
#2 · Zasláno: 8. 8. 2010, 12:25:18
Jedno z řešení se tu odkazovalo před pár dny
http://diskuse.jakpsatweb.cz/?action=vthread&forum=9&topic=113720 |
||
AM_ Profil |
#3 · Zasláno: 8. 8. 2010, 13:41:46
"Hloupé" řešení je jedním dotazem vytáhnout z databáze pouze zprávy, které nereagují na nic, a potom při výpisu pro každý příspěvek poslat nový dotaz a vytáhnout ty, které na něj reagují. Při větším fóru to bude extrémně pomalé a i se blbě vymýšlí stránkování, ale na naprogramování je to narozdíl od ostatních řešení (viz Kajman_em zaslané vlákno) triviální.
|
||
Luky Profil |
#4 · Zasláno: 8. 8. 2010, 23:54:17
Díky moc za radu akorát, nechtěl bysi (AM_) to trochu upřesnit? Bude se ta zpráva ukazovat opravdu pod ní? Zatím nevím jak na to...
|
||
Kcko Profil |
#5 · Zasláno: 9. 8. 2010, 00:23:18
AM:
To tvoje řešení bych upravil tak, že po vykonaném SQL dotazu bych příspěvky uložil do 2 rozměrného pole a rekurzivně vypsal. |
||
AM_ Profil |
#6 · Zasláno: 9. 8. 2010, 10:18:24 · Upravil/a: AM_
[#4] Luky
to, kde a jak přesně zprávu vypíšeš, už je čistě otázka poskládání kódu, co se ve kterou chvíli vypíše. Pokud nejdřív vyechuješ zprávu a potom začneš vypisovat reakce na ní (nejlépe nějakou rekurzivní funkcí - tedy vypíše reakci a zavolá sama sebe, aby vypsala reakce na danou reakci), tak se to také v tomto pořadí vypíše. [#5] Kcko jo, to samozřejmě jde :) |
||
Časová prodleva: 14 let
|
0