ďťż
Podstrony
|
telcocafeWitam!Napisalem swoj licznik odwiedzin oparty o plik txt.Ale cos nie chce mi chodzic...jak wpisze w plik licznik.txt liczbe 0 i wejde na server to normalnie doda 1 ale jezeli powtornie odswieze stronke to liczba znika i juz sie nic nie dzieje oto kod:<?php file_exists("licznik.txt"); //sprawdza czy plik istnieje $otworz = fopen("licznik.txt", "r"); //odczyt pliku flock($otworz, LOCK_SH); //blokowanie odczytu. Pozwala na dzielenie pliku z innym czytajacych $odczyt = fgets($otworz,100); //odczytje plik dp 99 bajtow flock($otworz, LOCK_UN); //zwolnienie blokady fclose($otworz); //zamyka plik $odczyt++; //dodaje do liczby 1 $otworz = fopen("licznik.txt", 'w'); //odczytuje plik do zapisu flock($otworz, LOCK_SH); ////blokowanie odczytu. Pozwala na dzielenie pliku z innym czytajacych fwrite($otworz,$odczyt); //zapisuje liczbe w pliku flock($otworz, LOCK_UN); //zwolnienie blokady fclose($otworz); //zamyka plik echo '<br />'; //enter echo ($odczyt);//odczytuje nowa liczbe ?> Tak powinno to wyglądać: <?php file_exists('licznik.txt'); //sprawdza czy plik istnieje $otworz = fopen("licznik.txt", "r"); //odczyt pliku flock($otworz, LOCK_SH); //blokowanie odczytu. Pozwala na dzielenie pliku z innym czytajacych $odczyt = fgets($otworz,100); //odczytje plik dp 99 bajtow flock($otworz, LOCK_UN); //zwolnienie blokady fclose($otworz); //zamyka plik $odczyt++; //dodaje do liczby 1 $otworz = fopen("licznik.txt", 'w'); //odczytuje plik do zapisu flock($otworz,LOCK_EX); ////zamyka dostęp do pliku na czas wykonania zapisu fwrite($otworz,$odczyt); //zapisuje liczbe w pliku flock($otworz,LOCK_UN); //zwolnienie blokady fclose($otworz); //zamyka plik echo '<br />'; //enter echo ($odczyt);//odczytuje nowa liczbe ?> Użytkownik Bartas edytował ten post 18 sierpień 2006, 07:06 ok thx..juz wszystko dziala :) ...to przy zapisie danych uzywam LOCk_EX??? ...to przy zapisie danych uzywam LOCk_EX??? Tak, ewentualnie możesz: - zamiast LOCK_SH dać 1 - zamiast LOCK_EX dać 2 - zamiast LOCK_UN dać 3 Zadalem pytanie ale nikt mi nanie nie odp...czy przed zapisem danych uzywam LOCK_EX??? Tak, przed zapisem używaj LOCK_EX, a przed odczytem LOCK_SH ok thx :P |
|||
Sitedesign by AltusUmbrae. |