![]() |
![]() |
![]() ![]()
Post
#1
|
|
Grupa: Zarejestrowani Postów: 50 Pomógł: 8 Dołączył: 28.10.2011 Ostrzeżenie: (0%) ![]() ![]() |
Chciałem napisać własną funkcje cachującą, bo w necie są tylko systemy oparte na klasach. W związku z tym ze nie ogarniam OOP i nie lubie używać czegoś czego nie rozumiem nie chce ich używac (IMG:style_emoticons/default/biggrin.gif)
Co źle robie? Wiem, że dziwnie napisane ;p samoukiem jestem więc dlatego błedy. Czego nie jestem pewnien? Zapisywania wyniku do pliku i odczytania go. Nie wiem właściwie czy dobrze funkcje zbudowałem.. ;/
tak wywołuje funkcje
no i później chce wyświetlić info z tablicy: Ten post edytował Novy. 10.03.2012, 22:05:26 |
|
|
![]() |
![]()
Post
#2
|
|
Grupa: Zarejestrowani Postów: 709 Pomógł: 176 Dołączył: 24.10.2010 Ostrzeżenie: (0%) ![]() ![]() |
to pobiera tylko 1 rekord z wyniku zapytania. Musisz dodać pętlę która przeskoczy po wszystkich rekordach. tutaj otwierasz plik do zapisu, a chcesz z niego odczytywać
tutaj usuniesz cache ale nie zapiszesz go w tym samym momencie nie lepiej byłoby odświeżać cache w tym samym czasie ? skoro jest już usunięty to możesz z wnętrza funkcji wywołać samą siebie i zapisać od razu nowy cache. |
|
|
![]()
Post
#3
|
|
Grupa: Zarejestrowani Postów: 50 Pomógł: 8 Dołączył: 28.10.2011 Ostrzeżenie: (0%) ![]() ![]() |
Błąd #2 - poprawione.
Błąd #3 - poprawione. Z 1 musisz mi pomóć bo nie wiem o co chodzi ;d tzn wiem ze mysql_fetch_array zwraca 1 rekord, ale w jaka petle mam wrzucic ? while? troche nie ogarniam (IMG:style_emoticons/default/biggrin.gif) jak byś mógł to poprawić bym był wdzieczny ;p |
|
|
![]()
Post
#4
|
|
Grupa: Zarejestrowani Postów: 709 Pomógł: 176 Dołączył: 24.10.2010 Ostrzeżenie: (0%) ![]() ![]() |
|
|
|
![]()
Post
#5
|
|
Grupa: Zarejestrowani Postów: 50 Pomógł: 8 Dołączył: 28.10.2011 Ostrzeżenie: (0%) ![]() ![]() |
Tyle, że nie wiem jak teraz to wyświetlić.
Chciałem pętlą while ale nie wiem jak (IMG:style_emoticons/default/haha.gif) pewnie tutaj też jest jakieś proste rozwiązanie (IMG:style_emoticons/default/biggrin.gif) Zrzuce wine na późną godzine (IMG:style_emoticons/default/biggrin.gif) |
|
|
![]()
Post
#6
|
|
Grupa: Zarejestrowani Postów: 709 Pomógł: 176 Dołączył: 24.10.2010 Ostrzeżenie: (0%) ![]() ![]() |
|
|
|
![]()
Post
#7
|
|
Grupa: Zarejestrowani Postów: 50 Pomógł: 8 Dołączył: 28.10.2011 Ostrzeżenie: (0%) ![]() ![]() |
Zwraca co potrzeba.
Tylko jak to wyświetlić w takiej liscie? Bez tego używałem while np.:
a teraz nie wiem jak, jak wstawie $mojWynik=mysql_cache_query("SELECT * FROM users",1); albo $mojWynik do while to mi się robi nieskonczona lista ;< |
|
|
![]()
Post
#8
|
|
Grupa: Zarejestrowani Postów: 709 Pomógł: 176 Dołączył: 24.10.2010 Ostrzeżenie: (0%) ![]() ![]() |
|
|
|
![]()
Post
#9
|
|
Grupa: Zarejestrowani Postów: 50 Pomógł: 8 Dołączył: 28.10.2011 Ostrzeżenie: (0%) ![]() ![]() |
Mam mieszane uczucia co do tego cache'owania.
Fakt ze zapisuje się do pliku i nie trzeba pytać bazy, ale czy to jest szybsze? Wykonanie funkcji + foreach? |
|
|
![]()
Post
#10
|
|
Grupa: Zarejestrowani Postów: 4 298 Pomógł: 447 Dołączył: 16.11.2006 Ostrzeżenie: (0%) ![]() ![]() |
Sama funkcja jest moim zdaniem za bardzo przekombinowana, szczególnie fopen itp. A czy jest to szybsze? Zależy jak duża jest baza, poza tym foreach też możesz wrzucić jako cache (w zasadzie to nawet powinieneś, o ile jest to naprawdę b. duża tablica).
Ten post edytował !*! 11.03.2012, 12:19:53 |
|
|
![]()
Post
#11
|
|
Grupa: Zarejestrowani Postów: 50 Pomógł: 8 Dołączył: 28.10.2011 Ostrzeżenie: (0%) ![]() ![]() |
A duża tablica to jaka? Może ja po prostu nie potrzebnie cache'uje (IMG:style_emoticons/default/biggrin.gif)
Może inaczej: Jaką tablice powinno się cache'ować? A można zastąpić fopen czymś innym? Jeśli tak to czy mógłbyś mi to pokazać na jakimś przykładzie? Jeśli coś jest zbędne lub gorsze od czegoś to chętnie to usune/zmienie z funkcji. Ten post edytował Novy. 11.03.2012, 12:25:29 |
|
|
![]()
Post
#12
|
|
Grupa: Zarejestrowani Postów: 709 Pomógł: 176 Dołączył: 24.10.2010 Ostrzeżenie: (0%) ![]() ![]() |
możesz użyć np: http://www.php.net/manual/pl/function.file-get-contents.php i http://www.php.net/manual/pl/function.file-put-contents.php
generalnie to z cache jest tak że powstała masa klas do tego i warto rozejrzeć się za czymś gotowym poświęcisz czas na zrozumienie tego i zdobędziesz nowe doświadczenie (IMG:style_emoticons/default/smile.gif) |
|
|
![]() ![]() |
![]() |
Aktualny czas: 24.08.2025 - 00:20 |