Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> Licznik wejsc z ciasteczkiem, mial nie dzialac przy odswierzaniu.
Mifczu
post
Post #1





Grupa: Zarejestrowani
Postów: 6
Pomógł: 0
Dołączył: 2.12.2004

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


Jestem poczatkujacy i zaczynam dopiero sie uczyc php. Znalazlem skrypt licznika odwiedzin ktory jest nizej i wyglada wszystko dobrze ale jak odswierzam to zwieksza sie licznik.
Na samym poczatku:
  1. <?
  2. setcookie(&#092;"visited\", \"1\", time()+3600*3);
  3. /* wysyła cookie na komputer użytkownika */
  4. ?>

W Body
  1. <?
  2.  
  3. if(file_exists(&#092;"counter.n\")) /* sprawdza, czy plik istnieje */
  4. {
  5.  $file=fopen(&#092;"counter.n\", \"r\"); /* otwiera plik */
  6.  flock($file, 1); /* blokuje plik */
  7.  
  8.  $ile=fgets($file, 100); /* odczytuje wartość */
  9.  
  10.  flock($file, 3); /* odblokowuje plik */
  11.  fclose($file); /* zamyka plik */
  12.  
  13.  if($visited!=&#092;"1\") /* sprawdza, czy
  14. użytkownik już odwiedzał stronę */
  15.  {
  16. $ile++; /* zwiększa wartość
  17.  o 1 tylko po pierwszym wejściu */
  18.  }
  19. }
  20. else
  21. {
  22.  $ile=1; /* jeśli plik nie istnieje, wyświetli się 1 */
  23. }
  24.  
  25.  
  26.  
  27. $file=fopen(&#092;"counter.n\", \"w\"); /* otwiera plik do zapisu */
  28. flock($file, 2); /* blokuje do zapisu */
  29.  
  30. fwrite($file, $ile); /* zapisuje wartość */
  31.  
  32. flock($file, 3); /* odblokowuje plik */
  33. fclose($file); /* zamyka plik */
  34.  
  35. echo($ile); /* wyświetla wartość */
  36.  
  37. ?>

Dlaczego nie dziala? Nawet probowalem dac w przegladarce na 0 bezpieczenstwo czyli full cistka itp. itd. i tak zwieksza sie :/
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi (1 - 5)
Tsiru
post
Post #2





Grupa: Zarejestrowani
Postów: 213
Pomógł: 0
Dołączył: 7.01.2005
Skąd: Nigdzie

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


A gdzie jest twój serwer (IMG:http://forum.php.pl/style_emoticons/default/questionmark.gif)
Mój ma 7 godzin różnicy z czasem polskim i musze zawsze wpisywać time()+7*60*60 :/
Może to przez to ?

Ten post edytował Tsiru 20.03.2005, 18:14:16
Go to the top of the page
+Quote Post
Mifczu
post
Post #3





Grupa: Zarejestrowani
Postów: 6
Pomógł: 0
Dołączył: 2.12.2004

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


To na moim domowym apatchu (IMG:http://forum.php.pl/style_emoticons/default/biggrin.gif) a czasm mam dobry (IMG:http://forum.php.pl/style_emoticons/default/biggrin.gif) wiec powinno dzialac chyba.
Go to the top of the page
+Quote Post
Tsiru
post
Post #4





Grupa: Zarejestrowani
Postów: 213
Pomógł: 0
Dołączył: 7.01.2005
Skąd: Nigdzie

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


No to niewiem :/
Musiałbym dobrze pomyśleć nad kodem (też jestem początkujący, może nawet bardziej - a co!), a musze napisać jeszcze księge gości.
Go to the top of the page
+Quote Post
mike
post
Post #5





Grupa: Przyjaciele php.pl
Postów: 7 494
Pomógł: 302
Dołączył: 31.03.2004

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


Włącz zmienne globalne, a jeżeli masz włączone to zacznij je stosować.
Wydaje mi się że błąd jest tu :
Nie tak :
  1. <?php
  2. //...
  3. if( $visited != &#092;"1\" ) /* sprawdza, czy użytkownik już odwiedzał stronę */
  4. {
  5. $ile++; /* zwiększa wartość o 1 tylko po pierwszym wejściu */
  6. }
  7. //...
  8. ?>

tylko tak :
  1. <?php
  2. //...
  3. if( $_COOKIE[ 'visited' ] != &#092;"1\" ) /* sprawdza, czy użytkownik już odwiedzał stronę */
  4. {
  5. $ile++; /* zwiększa wartość o 1 tylko po pierwszym wejściu */
  6. }
  7. //...
  8. ?>
Go to the top of the page
+Quote Post
Mifczu
post
Post #6





Grupa: Zarejestrowani
Postów: 6
Pomógł: 0
Dołączył: 2.12.2004

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


Niby dziala (IMG:http://forum.php.pl/style_emoticons/default/biggrin.gif)

THX mike_mech.
Go to the top of the page
+Quote Post

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: 23.08.2025 - 01:52