Niezalogowany [ logowanie ]
Subskrybuj kanał ATOM Kanał ATOM

Autor wpisu: Athlan, dodany: 09.06.2008 20:34, tagi: internet, php

Ostatnimi czasy pracuje nad dość dużym projektem. Jednym z punktów specyfikacji są fora dyskusyjne w grupach. Oczywiście pojawił się problem z nieprzeczytanymi postami. Jest kilka rozwiązań, każde ma swoje plusy i minusy:

  1. Sprawdzanie daty ostatniego postu na całym forum danej grupy. Pomysł zaczerpnięty z portalu nasza-klasa.pl, gdzie bok relacji użytkownik->forum zapisywana jest data ostatniego odwiedzenia forum. Jeżeli na forum jest nowszy post niż zapisana data - forum jest oznaczone jako nieprzeczytane. Minusem tego rozwiązania jest to, że działa bardzo ogólnikowo (nie wiadomo które tematy są nieprzeczytane, które nie - oznaczane jest tylko forum, w dodatku jeden raz).
  2. Korzystanie z historii przeglądarki przy użyciu stylu a:visited. Plus - łatwość implementacji, minusy - ogólnikowe, nie zawsze zadziała, amatorszczyzna (nie na taki projekt, rozumiem blog).
  3. Sposób z PHPBB: stworzenie relacji user->temat, gdzie zapisana jest data ostatniego czytania tematu. Plusy: możemy stwierdzić ostatnią wizytę co do konkretnego posta. Minusy: dużo syfu w bazie danych, wypadałoby dodać limit, np czyszczenie nieprzeczytanych for po ilości wątków oraz limit czasowy, czyszczone cronem lub przy innej okazji.

Po dłuższej analizie, zdecydowałem się na implementację trzeciego rozwiązania za pomocą tabeli:

  • handle_user (id usera),
  • handle_group (id grupy),
  • handle_thread (id tematu),
  • handle_time (czas ostatniej wizyty w temacie, defaultowo 0).

Autor wpisu: WojciechNaruniec, dodany: 01.06.2008 17:32, tagi: zend_framework

Ostatnio instalowałem aplikację opartą o Zend Framework na serwerze używającym oprogramowania IdeaWebServer i okazało się, że nie działają przekierowania: każda próba przekierowania za pomocą klasy Zend_Controller_Action_Helper_Redirector kończyła się błędem Internal Server Error 500. W pierwszej chwili pomysłałem że to wina serwera, ale błąd okazał się mieć źródło w samym ZF.
Wszystkie wpisy należą do ich twórców. PHP.pl nie ponosi odpowiedzialności za treść wpisów.