« 1 2
Autor Zpráva
joe
Profil
Kcko:
No rozdíl je v tom, že já mám jeden dotaz, kde zjistím jak nepřečtené témata pro uživatele, včetně jejich výběru. Ty máš složitější dotaz jen na počítání nepřečtených témat.
Já se jdu učit. "Cya" :)
mattyZEM
Profil
joe:
Proč by jich mělo být méně?
Pro výpis? Přeci uživateli nebudete říkat, že tam je 5 příspěvků, když tam je 1.

Píšeš bludy a sám to dobře víš.
To bych neřekl. U fóra počítám vždy s časem, u výpisu nemám problém s nepřečtenými sekcemi nebo tématy, dokonce ani nepřečtenými příspěvky. Zatím jsem se u žádné funkce nesetkal s tím, že by to nešlo, což by s tvým ukládáním počtu příspěvků šlo složitěji, takže vlastně svůj jeden MySQL příkaz nahradím dalšími.

A i kdyby, jeden MySQL příkaz na stránku navíc není zas tak hrozná věc, když už jich proběhne 20.

Navíc stejně do MySQL čas posledního příspěvku, jeho autora a ID příspěvku ukládat musím, protože je vypisuji.
joe
Profil
mattyZEM:
když už jich proběhne 20.

To mluví za vše, myslím, že nemá cenu pokračovat :-)

Možná právě proto jsou pak ty open-source řešení tak pomalé, jak jsou (např. phpBB)
mattyZEM
Profil
Tak jinak.

Co se týče fóra, vypisuji hlavní příspěvek (ten ukládám do tématu, takže všechny ty věci jako název tématu etc. mám z krku), pak zjišťuji zda bylo přečteno téma, což je 1 jednoduchý příkaz do mysql a pak vypíši ve while 15 příspěvků. Občas samozřejmě hodnocení či anketa, což je u hodnocení jeden, u ankety 2 příkazy.

Myslíš, že ten jeden jednoduchý příkaz (kde je where na id tématu a id uživatele, navíc proběhne jen pokud je uživatel přihlášen) by mi snad mohl zahltit databázi? Alespoň nepotřebuji zjišťovat počet přečtených příspěvků v sekci a to pak porovnávat s počtem příspěvků v sekci, pokud vůbec nějak rozlišuješ (ne)přečtené sekce.
joe
Profil
mattyZEM:
Tady se přece nebavíme o tom, že ti pohltí databázi. To pochybuji. Tady jde o princip a způsob řešení.

Co se týká toho cos napsal, tak předně doufám, že v tom while neposíláš jeden dotaz, tzn. ve tvém případě 15 dotazů.

Moje řešení "tvého fóra":
- hlavní příspěvek s informací, zda byl přečten nebo ne, vetně hodnocení = 1 dotaz namísto tvých tří
- odpovědí - 1 dotaz
- případná anketa - zde by stačil také jeden

A to je méně (3), než tvých minimálně 6.

Tady vidíš, že děláš dotazy zbytečně. Pokud bys vytvářel web pro nějakou komunitu (například web s návštěvností několik tísíc uživatelů denně), a ten by se uchytil, pak budeš rád za každý neposlaný dotaz. Takže se jdi učit :)

Já se loučím, stejně tu už bylo vše řečeno. Kdo chce, ten se poučí.
« 1 2

Vaše odpověď


Prosím používejte diakritiku a interpunkci.

Ochrana proti spamu. Napište prosím číslo dvě-sta čtyřicet-sedm: