Prosíme přihlašte se nebo zaregistrujte.

Přihlašte se svým uživatelským jménem a heslem.
Vaše pomoc je stále potřeba!

Autor Téma: Detekce nepřečtených příspěvků na zdejším fóru  (Přečteno 1776 krát)

On

  • Stálý člen
  • **
  • Příspěvků: 1136
    • Operační systémy
Detekce nepřečtených příspěvků na zdejším fóru
« kdy: 23 Července 2013, 07:24:02 »
Ahoj,

zrovna bych potřeboval do svého webu (PHP) zakomponovat funkci, která detekuje, byl-li příspěvek z diskuze přečten nebo ne.
Pokud ano, dojde k nějaké notifikaci (zde na fóru je to "new" u každého ještě nepřečteného příspěvku).

Souvisí to nějak se session, ale nepodařilo se mi zjistit jak..poradil by někdo?
Jediné co mě napadlo je zapisovat do DB u každého jména poslední URL v diskuzi.
Pokud přibude nový příspěvek (nové URL) a tudíž se nebude shodovat s tím, co je v DB, tak to zanotifikuje..asi by to nějak fungovalo, ale hádám, že to půjde nějak lépe?

díky
Asus M2A-VM HDMI, Athlon 64 X2 4800+, 4GB DDR2/800Mhz,Powercolor HD 2600 XT, Ubuntu 10.10
Být posledním nevadí, ale nikdy nesmíte být poslední dvakrát po sobě - Iacocca

ETNyx

  • Aktivní člen
  • *
  • Příspěvků: 425
Re:Detekce nepřečtených příspěvků na zdejším fóru
« Odpověď #1 kdy: 23 Července 2013, 09:47:47 »
Ahoj,

sessions jsou záležitostí daného serveru, pokud tedy nemáš přístup k serveru kde forum bezi tak se k nim asi nedostaneš. Od sessions se dostane jen jejich ID aby se mohly sesssion správně přiřadit ke správnému uživateli.

Nicméně SMF má API, ale je potřeba jej povolit/nainstalovat na konkrétním fóru, zda-li je zde nevím.

Tak asi jediná možnost na kterou se budeš moci spolehnout. Bude si sosnout uvodni stránku třeba pomocí curl a pro zjednodušení použít phpsimplehtmldoom (bo tak nějak se jmenuje ta knohovna) pro její parsování. Když si všimneš tak uplně dole v patičce úvodky je poslední příspěvěk a jeho čas, to prožeň pomoci strtotime a uloz do dtb pak to jen kontroluj s předchozí uloženou hodnotou. Pěkně to nahrň do cronu a jeto.

EDIT: jop to asi nebude to co jsi chtěl, že??? teďka jsem si to přečet ještě jednou :-D
« Poslední změna: 23 Července 2013, 09:55:27 od ETNyx »
jabber: etnyx@jabbim.cz

On

  • Stálý člen
  • **
  • Příspěvků: 1136
    • Operační systémy
Re:Detekce nepřečtených příspěvků na zdejším fóru
« Odpověď #2 kdy: 23 Července 2013, 10:27:02 »
No, pravda, že cron do mého plánu nějak nezapadá :))

Ale přístup na server mám, je to můj server, kde mám webové aplikace, takže mám kontrolu nad vším..ta diskuze, to je velmi jednoduchá diskuze, žádné diskuzní fórum..lidi si tam jen vyměňuji info ohledně plánování nějakých událostí (chlastačky, fotbálky, counter-strike nebo tak něco :) )..takže hledám nějaké jednoduché, elegantní řešení pro zobrazení nepřečtených zpráv...

EDIT: tak něco jsem našel tady: http://diskuse.jakpsatweb.cz/?action=vthread&forum=28&topic=129692
« Poslední změna: 23 Července 2013, 10:35:09 od On »
Asus M2A-VM HDMI, Athlon 64 X2 4800+, 4GB DDR2/800Mhz,Powercolor HD 2600 XT, Ubuntu 10.10
Být posledním nevadí, ale nikdy nesmíte být poslední dvakrát po sobě - Iacocca

ETNyx

  • Aktivní člen
  • *
  • Příspěvků: 425
Re:Detekce nepřečtených příspěvků na zdejším fóru
« Odpověď #3 kdy: 23 Července 2013, 10:58:28 »
Ahh ja to pochopil tak že chceš sledovat forum.ubuntu.cz :-D

Tady asi bude záležet jak je ta diskuze napsaná. Každopádně budeš muset rozhodnout kde se ty data budou skladovat a každá má své pro a proti,... Když jsm měl napsané svoje pidi forum tak jsem porovnával celkový počet příspěvků ve vybraných diskuzí (nechtěl jsem upozorňovat na všechny, ale jen na 2) a protože přístup do fóra měli jen registrovaní uživatelé tak jsem ukládal součty do dtb k jednotlivým uživatelům. Protože cookies a sessions zpravidla nemají neomezenou platnost a v dtb jsem si to poladil sám. Nicméně pokud mají přístup do diskuze i neregistovaní členové bude lepší zvoli cookies, protože sessions mají zpravidla kratší platnost než cookies a datově to cpát do dtb by mohlo být náročné, budeš tak zpravovat roboty a všechny co tam přijdou navíc třeba z jeden človek z pěti PC bude mít pět záznamů,....
jabber: etnyx@jabbim.cz

On

  • Stálý člen
  • **
  • Příspěvků: 1136
    • Operační systémy
Re:Detekce nepřečtených příspěvků na zdejším fóru
« Odpověď #4 kdy: 24 Července 2013, 13:02:20 »
Určitě to bude jen pro registrované uživatele...sledovat a porovnávat počet zpráv by šlo, ale jeden uživatel může založit X diskuzí. To bych musel ukládat pro jednoho uživatele počet u každé jeho založené diskuze..což by mi v tabulce "users" udělalo spíš binec. Možná se na to vyse*u a dám na úvodní stránku výpis poslední reakce..tím dotyčný hned uvidí, jestli tuto reakci zná nebo ne :)
Asus M2A-VM HDMI, Athlon 64 X2 4800+, 4GB DDR2/800Mhz,Powercolor HD 2600 XT, Ubuntu 10.10
Být posledním nevadí, ale nikdy nesmíte být poslední dvakrát po sobě - Iacocca

 

Provoz zaštiťuje spolek OpenAlt.