![]() |
![]() |
![]()
Post
#1
|
|
Grupa: Zarejestrowani Postów: 2 Pomógł: 0 Dołączył: 2.07.2008 Ostrzeżenie: (0%) ![]() ![]() |
Witam,
Czesto zachodzi potrzeba wyswietlac jakas tresc na stronie, ktora codziennie ma sie zmieniac, czy to jakis artykul, czy utwor muzyczny do pobrania na stronie czy jeszcze cos innego. Jak pobrac jeden rekord z bazy w ten sposob, aby miec pewnosc ze codziennie bedzie inny ? Przyjmujemy ze liczba rekordow wciaz rosnie (nie znamy ich ilosci), oraz nie znamy poziomu przysrostu rekordow w czasie. Zazwyczaj pobieram jakis artykul, i zaznaczam kolumnie ze jest wyswietlony, nastepny pobieram ze zbioru tych niewyswietlanych, jest to jednak uciazliwe, bo musze sprawdzac czy czasem te niewyswietlane sie nie skonczyly, a jesli tak to musze czyscic wszystkie rekordy i zabawe zaczynac od nowa. Ma ktos sprytniejsze rozwiazanie tego problemu ? Pozdrawiam |
|
|
![]() |
![]()
Post
#2
|
|
Grupa: Zarejestrowani Postów: 657 Pomógł: 2 Dołączył: 15.08.2003 Skąd: Łódź Ostrzeżenie: (0%) ![]() ![]() |
To $id_obecnie_wyswietlanego keszujesz gdzieś w pliku czy bazie, tak aby caly dzien wyswietlal sie tylko jeden wybrany wpis. Warto też zrobić cache wyniku całego zapytania czy tam wygenerowanego kodu HTML, tak żeby za każdym przeładowaniem nie pobierać tego "artykułu dnia" skoro i tak zmienia się tylko raz dziennie. No i pozostaje napisać skrypt odpalany z CRONa o północy, który usunie cache, wylosuje nowy artykuł i znów zapisze cache. |
|
|
![]()
Post
#3
|
|
Grupa: Przyjaciele php.pl Postów: 5 724 Pomógł: 259 Dołączył: 13.04.2004 Skąd: N/A Ostrzeżenie: (0%) ![]() ![]() |
Cytat Zazwyczaj pobieram jakis artykul, i zaznaczam kolumnie ze jest wyswietlony, nastepny pobieram ze zbioru tych niewyswietlanych, jest to jednak uciazliwe, bo musze sprawdzac czy czasem te niewyswietlane sie nie skonczyly, a jesli tak to musze czyscic wszystkie rekordy i zabawe zaczynac od nowa. Nie widze w tym nic zlego, tez bym tak zrobil. I czemu uciazliwe? 1 Select i Update wiecej. Wrzucasz to do klasy/funkcji i po problemie. |
|
|
![]()
Post
#4
|
|
Grupa: Zarejestrowani Postów: 3 Pomógł: 0 Dołączył: 7.11.2007 Ostrzeżenie: (0%) ![]() ![]() |
Używanie do tego CRON'a jest zupełnie zbędne. Co jeśli nie masz możliwości modyfikowania w nim wpisów ?
Do wykrywania dnia użyj po prostu funkcji odczytującej datę ( np w php date('Y-m-d'); ) i porównaj z tą zapisaną w bazie. |
|
|
![]()
Post
#5
|
|
Grupa: Zarejestrowani Postów: 156 Pomógł: 2 Dołączył: 9.09.2006 Skąd: Londyn/Gdynia Ostrzeżenie: (0%) ![]() ![]() |
Taktyka powinna byc taka:
jak najwiecej cacheowania i jak najwiecej w cronie.... Pracuje w olbrzymim serwisie i jest jedna z roznic dzialania szybko od wolno:) Jesli wykoujesz milion zbednych zapytan to raczej zle swiadczy o programiscie:) Pozdrawiam |
|
|
![]() ![]() |
![]() |
Aktualny czas: 23.08.2025 - 10:29 |