Witam serdecznie,
Na swojej stronie mam bardzo prosty licznik wejść, licznik działa na podstawie zmiennej sesyjnej $_SESSION[] i jesli owa nie istnieje to wykonuje kod:
  1. if(!isset($_SESSION['counter']))
  2. {
  3. $handle = fopen('engine/files/counter.txt', "r+");
  4. if(flock($handle, LOCK_EX))
  5. {
  6. $file = fread($handle, filesize('engine/files/counter.txt'));
  7. ftruncate($handle, 0);
  8. rewind($handle);
  9. $file++;
  10. fwrite($handle, $file);
  11. flock($handle, LOCK_UN);
  12. $_SESSION['counter'] = RandID(9);
  13. }
  14. fclose($handle);
  15. }

Mam blokady pliku w czasie odczytu i zapisu zmodyfikowanych danych a mimo to zdarza sie ze licznik albo sie wyzeruje albo liczy od połowy...
Ktoś mógłby mi pomóc w tym?