Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> [MySQL][PHP]Cachowanie danych.
Gruchol
post
Post #1





Grupa: Zarejestrowani
Postów: 242
Pomógł: 0
Dołączył: 28.11.2014

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


Witam,
Po dłuższym czasie postanowiłem wrócić do przygody z php. Jako swój pierwszy projekt postanowiłem zakodować stronę pewnej gry.
Aktualnie robię ranking, jednak przeszukiwanie całej bazy w której są dane kilkudziesięciu tysięcy użytkowników za bardzo obciąży serwer.
Potrzebuje wyświetlić i cachować takie dane jak czas gry, poziom gracza jakieś tam osiągnięcia itd. Chciałbym aby te dane aktualizowały się np. co 10 minut.
Na internecie znalazłem klasę nospora, jednak nie wiem jeszcze jak za bardzo się jej używa.
Prosiłbym Was o jakieś wskazówki i poradniki (mogą być anglojęzyczne) jakiej klasy użyć ew. jak to rozwiązać.
Pozdrawiam.
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi
Gruchol
post
Post #2





Grupa: Zarejestrowani
Postów: 242
Pomógł: 0
Dołączył: 28.11.2014

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


Tutaj lekko poprawiłem warunek bo wyrzucało błąd, że nie ma pliku:

  1. function load_cache($name, $lifetime = 60)
  2. {
  3. $file = sha1($name).'.cache';
  4. $dir = DOCROOT . 'cache' . DIRECTORY_SEPARATOR;
  5.  
  6. // cache wazna jesli aktualny czas time() - czas ostatniej modyfikacji pliku
  7. // jest mniejszy od czasu zycia w sekundach
  8. if (file_exists($dir.$file) AND (time() - filemtime($dir.$file)) < $lifetime)
  9. {
  10. return unserialize(file_get_contents($dir.$file));
  11. }
  12. elseif(file_exists($dir.$file)) // jesli nie, to usuwanie pliku jesli jest
  13. {
  14. unlink($dir.$file);
  15. }


Teraz próbuje przerobić aby wkładało wszystkie rekordy a nie tylko jeden lecz już nie mam pojęcia co z tym zrobić.
Próbowałem tak:
  1. while($row = $stmt->fetch(PDO::FETCH_ASSOC))
jednak nic nie chce ruszyć.

Ten post edytował Gruchol 26.07.2016, 21:42:58
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: 11.10.2025 - 10:08