Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

5 Stron V  « < 2 3 4 5 >  
Reply to this topicStart new topic
> Cache, [klasa] php5
xxdrago
post 29.12.2011, 10:41:48
Post #61





Grupa: Zarejestrowani
Postów: 654
Pomógł: 42
Dołączył: 27.07.2010
Skąd: Jaworzno

Ostrzeżenie: (0%)
-----


nospor, czy ta klasa nadawała by się do trzymania danych typu:
Kod
Ram: 36 %
0.00 - 0.00 - 0.00
5 %
Stan dysku 762.40 MB / 15.00 GB


Czy lepiej po prostu za każdym razem do maszyny wysyłać komendę?

Ten post edytował xxdrago 29.12.2011, 10:42:02


--------------------
GG: 10972302 :)
Go to the top of the page
+Quote Post
nospor
post 29.12.2011, 10:48:28
Post #62





Grupa: Moderatorzy
Postów: 36 457
Pomógł: 6296
Dołączył: 27.12.2004




W cache trzyma się dane, które przez dany okres czasu nie zmieniają się, a ich pozyskiwanie jest zasobożerne. Jeśli te dane takie są, to tak, można je trzymać w cache.


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

"Myśl, myśl, myśl..." - Kubuś Puchatek || "Manual, manual, manual..." - Kubuś Programista
"Szukaj, szukaj, szukaj..." - Kubuś Odkrywca || "Debuguj, debuguj, debuguj..." - Kubuś Developer

Go to the top of the page
+Quote Post
adam882
post 30.12.2011, 08:53:14
Post #63





Grupa: Zarejestrowani
Postów: 289
Pomógł: 1
Dołączył: 2.11.2007

Ostrzeżenie: (0%)
-----


Mam problem z klasą.

Mianowicie zrobiłem sobie system komentarzy w ajaxie (lokalizacja pliku do odbierania danych: module/komentarz_ajax.php). Dałem w nim również funkcję czyszczenia cache dla podstrony, na której formularz został wywołany.
Po wywołaniu w pliku takiego kodu:
  1. $cache->ClearObjects('statystyki','@stringi');

Tworzy mi pusty katalog w lokalizacji: module/Cache (moja lokalizacja folderu cache to: Cache/ , a nie module/Cache). Nie wiem czy może mieć to znaczenie, ale plik "module/komentarz_ajax.php includuje" config.php (gdzie zadeklarowana jest klasa) - cofając się o folder ( include('../config.php'); )

Ten post edytował adam882 30.12.2011, 08:54:11
Go to the top of the page
+Quote Post
nospor
post 30.12.2011, 09:00:34
Post #64





Grupa: Moderatorzy
Postów: 36 457
Pomógł: 6296
Dołączył: 27.12.2004




Jeśli jako ścieżkę do katalogu podajesz tak: Cache to jest to ścieżka względne i leci względem aktualnego katalogu. Stąd zapewne masz problem. Musisz więc podawać ścieżkę bezwględną


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

"Myśl, myśl, myśl..." - Kubuś Puchatek || "Manual, manual, manual..." - Kubuś Programista
"Szukaj, szukaj, szukaj..." - Kubuś Odkrywca || "Debuguj, debuguj, debuguj..." - Kubuś Developer

Go to the top of the page
+Quote Post
adam882
post 30.12.2011, 09:06:03
Post #65





Grupa: Zarejestrowani
Postów: 289
Pomógł: 1
Dołączył: 2.11.2007

Ostrzeżenie: (0%)
-----


W jaki sposób można to zrobić?
Modyfikując kod:
  1. $cache->AddDriver('fileDriver',new CacheFileDriver('Cache'));

chyba nie mogę dopisać ścieżki do 'Cache' bo wywala mi błąd z tworzeniem katalogu
Go to the top of the page
+Quote Post
nospor
post 30.12.2011, 09:10:03
Post #66





Grupa: Moderatorzy
Postów: 36 457
Pomógł: 6296
Dołączył: 27.12.2004




Albo podajesz złą ścieżkę
Albo skrypt nie ma prawa tworzenia katalogu tam gdzie podajesz

Albo więc podaj prawidłową ścieżkę
Albo nadaj właściwe prawa na tej ścieżce
Albo utwórz katalog Cache ręcznie wówczas skrypt nie będzie musiał go tworzyć


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

"Myśl, myśl, myśl..." - Kubuś Puchatek || "Manual, manual, manual..." - Kubuś Programista
"Szukaj, szukaj, szukaj..." - Kubuś Odkrywca || "Debuguj, debuguj, debuguj..." - Kubuś Developer

Go to the top of the page
+Quote Post
adam882
post 30.12.2011, 09:22:40
Post #67





Grupa: Zarejestrowani
Postów: 289
Pomógł: 1
Dołączył: 2.11.2007

Ostrzeżenie: (0%)
-----


Wydaje mi się, że problem leży tylko i wyłącznie w ścieżce - po prostu skrypt jakoś nie może się cofnąć do poprzedniego katalogu, gdzie jest folder z Cache i traktuje folder "module" jako folder główny.
Problem dotyczy tylko formularza z ajaxem. W jaki sposób można podać ścieżkę do cache?
Go to the top of the page
+Quote Post
nospor
post 30.12.2011, 09:26:10
Post #68





Grupa: Moderatorzy
Postów: 36 457
Pomógł: 6296
Dołączył: 27.12.2004




Przecież ci napisałem: masz podać ścieżkę bezwzględną a nie względną. Gdy podasz ścieżkę bezwzględną, to problemu ze ścieżką na 100% nie bedzie.


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

"Myśl, myśl, myśl..." - Kubuś Puchatek || "Manual, manual, manual..." - Kubuś Programista
"Szukaj, szukaj, szukaj..." - Kubuś Odkrywca || "Debuguj, debuguj, debuguj..." - Kubuś Developer

Go to the top of the page
+Quote Post
adam882
post 30.12.2011, 09:34:49
Post #69





Grupa: Zarejestrowani
Postów: 289
Pomógł: 1
Dołączył: 2.11.2007

Ostrzeżenie: (0%)
-----


ok, ale w którym miejscu się to ustawia ? (bo gdzie próbuję to ustawić, to nie działa) W "example" nie widzę nic o ustawaniu ścieżki. Wybacz, że tak Cię męczę ..

Ten post edytował adam882 30.12.2011, 09:35:01
Go to the top of the page
+Quote Post
nospor
post 30.12.2011, 09:43:17
Post #70





Grupa: Moderatorzy
Postów: 36 457
Pomógł: 6296
Dołączył: 27.12.2004




No tu to się ustawia:
$cache->AddDriver('fileDriver',new CacheFileDriver('Cache'));

Chcesz pełną ściezke to piszesz pełną sciezke:
$cache->AddDriver('fileDriver',new CacheFileDriver('pełnasciezkadotakalogu/Cache'));


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

"Myśl, myśl, myśl..." - Kubuś Puchatek || "Manual, manual, manual..." - Kubuś Programista
"Szukaj, szukaj, szukaj..." - Kubuś Odkrywca || "Debuguj, debuguj, debuguj..." - Kubuś Developer

Go to the top of the page
+Quote Post
adam882
post 30.12.2011, 09:49:16
Post #71





Grupa: Zarejestrowani
Postów: 289
Pomógł: 1
Dołączył: 2.11.2007

Ostrzeżenie: (0%)
-----


Robiłem tak i coś takiego mi pokazało:

Fatal error: Uncaught exception 'CacheException' with message 'Can't create file/catalog: http://localhost/strony/skrypt/Cache' in C:\xampp\htdocs\strony\skrypt\class\drivers\CacheFileDriver.class.php on line 41

CacheException: Can't create file/catalog: http://localhost/strony/skrypt/Cache in C:\xampp\htdocs\strony\skrypt\class\drivers\CacheFileDriver.class.php on line 41

Czy może chodzi tutaj o podanie ścieżki na serwerze? (czy jak to się nazywa)

Ten post edytował adam882 30.12.2011, 09:50:15
Go to the top of the page
+Quote Post
nospor
post 30.12.2011, 09:53:12
Post #72





Grupa: Moderatorzy
Postów: 36 457
Pomógł: 6296
Dołączył: 27.12.2004




Cytat
Czy może chodzi tutaj o podanie ścieżki na serwerze? (czy jak to się nazywa)
rety.... tak, chodzi właśnie o ścieżke na serwerze. To co ty podajesz to jest URL...


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

"Myśl, myśl, myśl..." - Kubuś Puchatek || "Manual, manual, manual..." - Kubuś Programista
"Szukaj, szukaj, szukaj..." - Kubuś Odkrywca || "Debuguj, debuguj, debuguj..." - Kubuś Developer

Go to the top of the page
+Quote Post
adam882
post 30.12.2011, 09:54:40
Post #73





Grupa: Zarejestrowani
Postów: 289
Pomógł: 1
Dołączył: 2.11.2007

Ostrzeżenie: (0%)
-----


Wybacz, ciągle się uczę. Dzięki
Go to the top of the page
+Quote Post
verio
post 5.01.2012, 23:44:43
Post #74





Grupa: Zarejestrowani
Postów: 49
Pomógł: 1
Dołączył: 23.01.2007
Skąd: Wołomin

Ostrzeżenie: (0%)
-----


Czy można liczyć na jakieś wskazówki jak podłączyć tą klasę do OPT v2? rolleyes.gif
Go to the top of the page
+Quote Post
nospor
post 6.01.2012, 13:03:01
Post #75





Grupa: Moderatorzy
Postów: 36 457
Pomógł: 6296
Dołączył: 27.12.2004




1) Nie wiem jak wygląda OPT
2) Cache za bardzo z OPT nie ma nic wspólnego. cache generuje się przed skorzystaniem do OPT. Do OPT mogą trafiać dane zarówno z bazy jak i z cache.


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

"Myśl, myśl, myśl..." - Kubuś Puchatek || "Manual, manual, manual..." - Kubuś Programista
"Szukaj, szukaj, szukaj..." - Kubuś Odkrywca || "Debuguj, debuguj, debuguj..." - Kubuś Developer

Go to the top of the page
+Quote Post
pitbull82
post 11.01.2012, 19:28:20
Post #76





Grupa: Zarejestrowani
Postów: 167
Pomógł: 0
Dołączył: 30.04.2004
Skąd: Częstochowa

Ostrzeżenie: (0%)
-----


Tworzę sobie swoją, znacznie prostszą klasę do cachowania, patrzyłem jak to zrobiłeś. Czy w CacheFileDriver w linii 62 zamiast

  1. if ($objectValue === false || is_null($objectValue))

nie powinno być czasem
  1. if ($objectValueS === false || is_null($objectValueS))

?

Ten post edytował pitbull82 11.01.2012, 19:28:51


--------------------
Go to the top of the page
+Quote Post
nospor
post 11.01.2012, 19:40:46
Post #77





Grupa: Moderatorzy
Postów: 36 457
Pomógł: 6296
Dołączył: 27.12.2004




Ano powinno smile.gif
Naszczeście serialize rzadko kiedy się nie udaje, więc błąd nie jest straszny, ale masz racje, jest smile.gif


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

"Myśl, myśl, myśl..." - Kubuś Puchatek || "Manual, manual, manual..." - Kubuś Programista
"Szukaj, szukaj, szukaj..." - Kubuś Odkrywca || "Debuguj, debuguj, debuguj..." - Kubuś Developer

Go to the top of the page
+Quote Post
pitbull82
post 11.01.2012, 19:44:41
Post #78





Grupa: Zarejestrowani
Postów: 167
Pomógł: 0
Dołączył: 30.04.2004
Skąd: Częstochowa

Ostrzeżenie: (0%)
-----


To jeszcze na wszelki wypadek linia 224

  1. $res = rmdir($fileInfo->getPathname());

tutaj nie powinno być wywołanie rekurencyjne? Bo jeśli w podkatalogu będą pliki, to nie usunie katalogu.

Generalnie ładna praca, którą dosyć ciężko szybko przenalizować, ale najważniejsze że działa i jest nią zainteresowanie co widać po tym wątku smile.gif


--------------------
Go to the top of the page
+Quote Post
nospor
post 11.01.2012, 19:46:42
Post #79





Grupa: Moderatorzy
Postów: 36 457
Pomógł: 6296
Dołączył: 27.12.2004




Hehe, nie, tym razem wszystko jest ok.
Spójrz pare linijek wyżej:
$iterator = new RecursiveIteratorIterator(new RecursiveDirectoryIterator($dirName), RecursiveIteratorIterator::CHILD_FIRST);
rekurencję mam tu smile.gif


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

"Myśl, myśl, myśl..." - Kubuś Puchatek || "Manual, manual, manual..." - Kubuś Programista
"Szukaj, szukaj, szukaj..." - Kubuś Odkrywca || "Debuguj, debuguj, debuguj..." - Kubuś Developer

Go to the top of the page
+Quote Post
pitbull82
post 11.01.2012, 19:48:46
Post #80





Grupa: Zarejestrowani
Postów: 167
Pomógł: 0
Dołączył: 30.04.2004
Skąd: Częstochowa

Ostrzeżenie: (0%)
-----


Bez bicia przyznaję się, że nie bawiłem się jeszcze nigdy iteratorami, więc nie domyśliłem się że ten zapis załatwia rekurencję smile.gif


--------------------
Go to the top of the page
+Quote Post

5 Stron V  « < 2 3 4 5 >
Reply to this topicStart new topic
3 Użytkowników czyta ten temat (3 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Wersja Lo-Fi Aktualny czas: 27.04.2024 - 02:43