![]() |
![]() |
![]()
Post
#1
|
|
Grupa: Zarejestrowani Postów: 7 Pomógł: 0 Dołączył: 6.08.2003 Skąd: Warszawa Ostrzeżenie: (0%) ![]() ![]() |
Otóz mam pewnien kłopot. Liczniki które kiedys napisalem (dzienny i totalny) sprawowaly sie doskonale az do czasy kiedy liczba gosci zaczela przekraczac 2 tys dziennie. Obecnie gdy ruch na witrynie wynosci ponad 3 tys na dobe oba zupełnie niezaleznie (choc napisane troche inaczej) i losowo potrafia po prostu sie wyzerowac i to nawet kilka razy dziennie aby znów przez 2-3 dzialac bezbłednie do czasu nastepnego padu... Przyznacie ze to troche dobijajace Cóz moze byc tego przyczyna? Czyzby dwaj uzytkownicy otworzyli plik dokladnie w tym samym momencie w dokladnoscia do tysiecznej czesci sekundy i spowodowali bład? A moze po prostu liczniki tekstowe maja taki urok?
[php:1:0e1de57019]<?php setcookie('adonaig', '1', time()+600); if($adonaig!="1") { $counter_file_line = file('counter2'); $counter_file_line[0] = $counter_file_line[0]+1; $cf = fopen('counter2', "w"); flock($cf,2); fputs($cf, "$counter_file_line[0]"); fclose($cf); } $counter_file_line = file('counter2'); $cf = fopen('counter2', "r"); flock($cf,2); $ile1=fgets($cf, "$counter_file_line[0]"); fclose($cf); $dzien = date("d.m.Y"); if(file_exists(''.$dzien.'.txt')) { $file=fopen(''.$dzien.'.txt', "r"); flock($file, 1); $ile2=fgets($file, 8); flock($file, 3); fclose($file); if($adonaig!="1") { $ile2++; }} else { $ile2=1; } $file=fopen(''.$dzien.'.txt', "w"); flock($file, 2); fwrite($file, $ile2); flock($file, 3); fclose($file); ?>[/php:1:0e1de57019] |
|
|
![]() |
![]()
Post
#2
|
|
![]() Grupa: Zarejestrowani Postów: 764 Pomógł: 3 Dołączył: 30.04.2003 Ostrzeżenie: (0%) ![]() ![]() |
jeżeli masz możliwość to może przy takiej ilości odwiedzin na dobę pasowałoby wykorzystać tutaj bazę danych i przy okazji spisywać dodatkowe informacje o użytkownikach (np. z przeglądarki jakiej korzystają, daty i czas odwiedzić) - późniejsze wybieranie danych będzie o wiele łatwiejsze niż przy plikach
|
|
|
![]()
Post
#3
|
|
Grupa: Zarejestrowani Postów: 7 Pomógł: 0 Dołączył: 6.08.2003 Skąd: Warszawa Ostrzeżenie: (0%) ![]() ![]() |
No coz praktycznie sam sobie odpowiadam ale pragnę poinformować
iz zamienilem na inny skrypt i narazie liczniki dzialaja wyśmienicie! Oto nowy kod moze ktos skorzysta: [php:1:117e74480d]<? $fp = fopen('counter.dat', "r+"); flock($fp, 1); $count = fgets($fp, 4096); if($adonaig!="1") { $count += 1; } fseek($fp,0); fputs($fp, $count); flock($fp, 3); fclose($fp);<?php ?>[/php:1:117e74480d] |
|
|
![]()
Post
#4
|
|
![]() Grupa: Zarejestrowani Postów: 1 640 Pomógł: 28 Dołączył: 13.02.2003 Skąd: Międzyrzecz/Poznań Ostrzeżenie: (0%) ![]() ![]() |
mialem podobny problem, ale na bazie!
Byl to licznik online, i juz 3x padl, nie wiem czego to jest przyczyna ;/ -------------------- PHP Developer
"Nadmiar wiedzy jest równie szkodliwy jak jej brak" Émile Zola |
|
|
![]()
Post
#5
|
|
Grupa: Zarejestrowani Postów: 65 Pomógł: 2 Dołączył: 25.08.2003 Skąd: Lublin Ostrzeżenie: (0%) ![]() ![]() |
Cytat mialem podobny problem, ale na bazie!
Byl to licznik online, i juz 3x padl, nie wiem czego to jest przyczyna ;/ zapewne gdzies:) w... zapytaniach do bazy... ?! |
|
|
![]()
Post
#6
|
|
![]() Grupa: Zarejestrowani Postów: 1 640 Pomógł: 28 Dołączył: 13.02.2003 Skąd: Międzyrzecz/Poznań Ostrzeżenie: (0%) ![]() ![]() |
no najprostrze zapytania jakie maga byc
-------------------- PHP Developer
"Nadmiar wiedzy jest równie szkodliwy jak jej brak" Émile Zola |
|
|
![]() ![]() |
![]() |
Wersja Lo-Fi | Aktualny czas: 19.07.2025 - 16:08 |