Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> Rekordy w datach cyklicznych
wookieb
post
Post #1





Grupa: Moderatorzy
Postów: 8 989
Pomógł: 1550
Dołączył: 8.08.2008
Skąd: Słupsk/Gdańsk




Mam za zadanie oprogramować ala "kalendarz" w którym jedna z funkcjonalności to możliwość tworzenia wpisów występujących cyklicznie.
Przykładowo dodajemy "Spotkania klasowe dnia 2010-09-02 18:00" -> "Powtórz co miesiąc" co spowoduje, że wydarzenie wystąpi w takich datach jak 2010-10-02 18:00, 2010-11-02 18:00 itd

Jak to zapisać w bazie to bym wiedział (nawet korzystając ze standardu http://en.wikipedia.org/wiki/Iso8601#Durations )
Tylko teraz jak sprytnie pobrać zdarzenia uwzględniąjąc ich cykliczność.
Rozwiązaniem byłoby generowanie zdarzeń naprzód ale chciałbym tego uniknąć.

Ten post edytował wookieb 2.09.2010, 12:37:48
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi
thek
post
Post #2





Grupa: Moderatorzy
Postów: 4 362
Pomógł: 714
Dołączył: 12.02.2009
Skąd: Jak się położę tak leżę :D




Jak tam to działa to nie wiem, ale sądzę, że mają datę bazową i spośród wszystkich cyklicznych, w locie przeliczają, które pasują do wybranego okresu. Komórki i tak ograniczają się do wyświetlania jednego miesiąca, więc nawet kilkaset wpisów dynamicznych (mało kto tyle wrzuci) do obróbki nie będzie problemem. Dorzuci się w razie czego w cache i po sprawie, żeby w trakcie jednej sesji nie liczyć przy łażeniu tam i z powrotem po miesiącach za każdym razem. Poza tym zwróć uwagę na jedno... Zdarzenia cykliczne są edytowalne tylko w zakresie głównego, bazowego wpisu. Jego edycja modyfikuje wszystkie. Nie da się edytować któregoś tam bez skutków ubocznych. Wyjście z kalendarza bowiem "zresetuje" ustawienia tego pojedynczego jeśli nie zapiszesz go do bazy. Co gorsza możesz zapisać, ale co zrobi po powrocie baza jeśli cache usunięto?Będzie pamiętała ten zachowany wyjątek, ale i stworzy na nowo pasujące do cyklu, co tworzy wyjątek i wpis z jakiego powstał obok siebie, co też jest niedopuszczalne. One muszą być z jakimś wyprzedzeniem generowane i zapisywane jako osobne siłą rzeczy. I tak źle i tak niedobrze. Bo chyba nie będziesz przechowywał informacji 'wszystkie pasują do wzorca cyklu, ale X oraz Y nie i mają one czas ustawiony na...'
Go to the top of the page
+Quote Post

Posty w temacie


Reply to this topicStart new topic
2 Użytkowników czyta ten temat (2 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Aktualny czas: 10.06.2026 - 11:11