Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> [PHP] router i cache
-Pytam-
post 26.07.2012, 07:03:56
Post #1





Goście







Piszę sobie mini router na stornę. Chciałbym zastosować w nim cache czyli zrzucać do pliku wszytko co zostało wygenerowane przez php i przy kolejnej próbie połączenia odczytać zawartość z pliku. To już zrobiłem i działa idealnie, jednak nie wiem co zrobić w przypadku zmiany danych z zewnątrz, np. wysłanie formularza, jak wtedy pominąć odczyt z cache?

Sprawdzać czy zostały wysłane jakieś dane przez POST i wtedy wczytać stronę poprawnie? A co w wypadku innych danych? Jak to rozwiązać?
Go to the top of the page
+Quote Post
erix
post 26.07.2012, 08:45:29
Post #2





Grupa: Moderatorzy
Postów: 15 467
Pomógł: 1451
Dołączył: 25.04.2005
Skąd: Szczebrzeszyn/Rzeszów




Cytat
jednak nie wiem co zrobić w przypadku zmiany danych z zewnątrz, np. wysłanie formularza, jak wtedy pominąć odczyt z cache?

Strasznie ogólnikowe... To jest cache dla routera, czy dla zawartości?


--------------------

ZCE :: Pisząc PW załączaj LINK DO TEMATU i TYLKO w sprawach moderacji :: jakiś błąd - a TREŚĆ BŁĘDU? :: nie ponaglaj z odpowiedzią via PW!
Go to the top of the page
+Quote Post
-Pytam-
post 26.07.2012, 08:52:58
Post #3





Goście







index.php > router (jeśli istnieje cache to zwraca cache strony/zawartość), jesli nie, wczytuje klasy od nowa. I co w przypadku gdy cache istnieje, ale wysyłane są dane z formularza? lub cokolwiek innego.
Go to the top of the page
+Quote Post
erix
post 26.07.2012, 08:59:30
Post #4





Grupa: Moderatorzy
Postów: 15 467
Pomógł: 1451
Dołączył: 25.04.2005
Skąd: Szczebrzeszyn/Rzeszów




To wtedy sprawdzasz, czy istnieje w cache i nie ma POST.


--------------------

ZCE :: Pisząc PW załączaj LINK DO TEMATU i TYLKO w sprawach moderacji :: jakiś błąd - a TREŚĆ BŁĘDU? :: nie ponaglaj z odpowiedzią via PW!
Go to the top of the page
+Quote Post
wNogachSpisz
post 26.07.2012, 10:38:34
Post #5





Grupa: Zarejestrowani
Postów: 1 233
Pomógł: 87
Dołączył: 6.03.2009

Ostrzeżenie: (40%)
XX---


Napisz jakie zadania realizuje Twoja biblioteka router. Po jedym zdaniu od myślników.
Go to the top of the page
+Quote Post
-Pytam-
post 26.07.2012, 13:01:11
Post #6





Goście







- wczytuje się wink.gif
- pobiera reguły
- sprawdza je z URI czy pasują
- uruchamia odpowiednie klasy

miałoby być tak samo, z tą różnicą że jak zostanie zapisane cache to odczyta cache bez sprawzdania URI, reguł i uruchamiania klasy (czyli cały kod wynikowy). Jakie dane prócz post powinny jeszcze wchodzić w grę?
Go to the top of the page
+Quote Post
erix
post 26.07.2012, 13:06:58
Post #7





Grupa: Moderatorzy
Postów: 15 467
Pomógł: 1451
Dołączył: 25.04.2005
Skąd: Szczebrzeszyn/Rzeszów




A to my mamy znać charakter Twojej aplikacji? tongue.gif


--------------------

ZCE :: Pisząc PW załączaj LINK DO TEMATU i TYLKO w sprawach moderacji :: jakiś błąd - a TREŚĆ BŁĘDU? :: nie ponaglaj z odpowiedzią via PW!
Go to the top of the page
+Quote Post
-Pytam-
post 26.07.2012, 13:10:18
Post #8





Goście







Tu nie chodzi o aplikacji, a sposób działania, przecież muszą być jakieś wytyczne w tym temacie. Jak to robią np różne FW? np. w CI też jest cache kodu wynikowego i jak istieje, router nie sprasza dalej tylko wczytuje to co jest. niestety kod CI jest zagmatwany i nie moge sie dokopać do klasy która za to odpowiada.
Go to the top of the page
+Quote Post
erix
post 26.07.2012, 13:37:44
Post #9





Grupa: Moderatorzy
Postów: 15 467
Pomógł: 1451
Dołączył: 25.04.2005
Skąd: Szczebrzeszyn/Rzeszów




Ale co zastosowanie, to się inaczej stosuje...

Nie ma uniwersalnej recepty.


--------------------

ZCE :: Pisząc PW załączaj LINK DO TEMATU i TYLKO w sprawach moderacji :: jakiś błąd - a TREŚĆ BŁĘDU? :: nie ponaglaj z odpowiedzią via PW!
Go to the top of the page
+Quote Post
-Pytam-
post 26.07.2012, 13:55:04
Post #10





Goście







Cytat
Ale co zastosowanie, to się inaczej stosuje...

Jak?
Go to the top of the page
+Quote Post
erix
post 26.07.2012, 13:59:32
Post #11





Grupa: Moderatorzy
Postów: 15 467
Pomógł: 1451
Dołączył: 25.04.2005
Skąd: Szczebrzeszyn/Rzeszów




Sprecyzuj pytanie.


--------------------

ZCE :: Pisząc PW załączaj LINK DO TEMATU i TYLKO w sprawach moderacji :: jakiś błąd - a TREŚĆ BŁĘDU? :: nie ponaglaj z odpowiedzią via PW!
Go to the top of the page
+Quote Post
-GośćPytam-
post 26.07.2012, 14:09:43
Post #12





Goście







Jak mam wczytać stronę, w wypadku wysłania do niej np POST, a gdy posiadam jej cache, tak aby w takim i tylko takim wypadku, cache było pomijane. Dobrze pokazuje tu ten obrazek http://codeigniter.com/user_guide/overview/appflow.html jak działa taki mechanizm w routerze
Go to the top of the page
+Quote Post
erix
post 26.07.2012, 14:20:54
Post #13





Grupa: Moderatorzy
Postów: 15 467
Pomógł: 1451
Dołączył: 25.04.2005
Skąd: Szczebrzeszyn/Rzeszów




Nie miałem za wiele do czynienia z CI, ale - bazując na innych doświadczeniach - trzeba by było napisać własną klasę routującą (nie wiem, czy w CI jest coś takiego możliwe; głośno myślę).

Generalnie dobrze by było, gdybyś pokazał, gdzie aktywujesz cache.


--------------------

ZCE :: Pisząc PW załączaj LINK DO TEMATU i TYLKO w sprawach moderacji :: jakiś błąd - a TREŚĆ BŁĘDU? :: nie ponaglaj z odpowiedzią via PW!
Go to the top of the page
+Quote Post
-Pytam-
post 26.07.2012, 14:27:45
Post #14





Goście







w klasie router, przed pobraniem URI itd. sprawdzam czy cache istnieje, jak nie, to sprwdzam tak jak pisałem wyzej. sęk w tym że jak wyślę np. formularz, to mam taką sytuacje

1. wchodzę na stronę np. z notką bloga, pod którymi są komentarze
2. strona zapisuje się w cache
3. wchodząc raz jeszcze dostaję to co zawiera cache
4. chcąc wysłać formularz...

I tu pojawia się problem, bo router nie wykona się po swojemu nazwizując co klasy kontrolera gdzie wysyła dane forumlarza do bazy, tylko wczyta to co jest w cache.
Hmm czekaj, chyba sam wpadłem na to... po prostu skasuję cache przed wysłaniem pofmularza biggrin.gif cholera, to proste biggrin.gif hehehe wybaczcie za zamieszanie.
Go to the top of the page
+Quote Post

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

 



RSS Wersja Lo-Fi Aktualny czas: 16.06.2025 - 18:55