Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> licznik osob online, zawsze pokazuje wartosc 1 choc jest wiele osob na stronie ????
uczaj21
post
Post #1





Grupa: Zarejestrowani
Postów: 115
Pomógł: 0
Dołączył: 30.06.2007

Ostrzeżenie: (20%)
X----


Prosze o pomoc mam skrypt php pokazujacy ilosc osob na stronie online oraz ilosc osob odwiedzonych strone i nr ip.Problem polega na liczniku osob online na www zawsze pokazuje 1 osobe chodz jest ich wieksza ilosc.Tylko ta opcja zle dziala inne dzialaja prawidlowo
  1. <?php
  2. $ip = $_SERVER['REMOTE_ADDR'];
  3.  
  4. function badIP($ip)
  5. {
  6. $end_line = "r\n";
  7. if(file_exists("banned_ip.txt")){
  8.   $fd = fopen("banned_ip.txt", "r+");
  9. }
  10. else{
  11.   $fd = fopen("banned_ip.txt", "a+");
  12. }
  13. if(!$fd) return false;
  14. while (!feof ($fd)) {
  15.   $line = trim(fgets($fd));
  16.   if($line == $ip){
  17.     fclose($fd);
  18.     return true;
  19.   }
  20. }
  21. fseek($fd, filesize("banned_ip.txt"));
  22. fputs($fd, $ip.$end_line);
  23. fclose($fd);
  24. return false;
  25. }
  26.  
  27. function getHits()
  28. {
  29. if(($fp = @fopen("counter.txt", "r+")) === false)
  30.   return false;
  31. $count = fgets($fp);
  32. if(!badIP($_SERVER['REMOTE_ADDR'])){
  33.   $count = $count + 1;
  34.   fseek($fp, 0);
  35.   fputs($fp, $count);
  36. }
  37. fclose($fp);
  38. return $count;
  39. }
  40. $minut = 1;
  41. $teraz = time()+60*$minut;
  42. $bazaip = file("ip.txt");
  43. $ile = count($bazaip);
  44. $ip = $_SERVER["REMOTE_ADDR"];
  45.  
  46. for ($i=0;$i<$ile;$i++) {
  47. $pol = explode("",$bazaip[$i]);
  48. if ($pol[2]<time()) {$bazaip[$i]="";}
  49. if ($pol[1]==$ip) {
  50. $bazaip[$i]="$ip$teraz <br>\n"; $jest=1;
  51. }
  52. }
  53.  
  54. if ($jest<>1) $bazaip[]="$ip $teraz\n";
  55. $f = fopen("ip.txt","w");flock($f,2);
  56. for ($i=0;$i<$ile+1;$i++) {
  57. if ($bazaip[$i]<>"") { fwrite($f, $bazaip[$i]); $ileip++; }
  58. }
  59. flock($f,3); fclose($f);
  60.  
  61. echo '<font size="2"><u>Gosci na naszej stronie online : </u></font>'.'<b><font color="#099FF0">'.$ileip.'&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</b></font>';
  62. echo('<font size="2"><u>Ta strona została odwiedzona : </u></font>'.'<font color="#099FF0"><b>'.getHits().'&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</b></font>');
  63. echo '<font size="2"><u>&nbsp;Twoj numer ip : &nbsp;</u></font>'.'<b><font color="#099FF0">'.$ip.'&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</font></b>';
  64. ?>
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi
uczaj21
post
Post #2





Grupa: Zarejestrowani
Postów: 115
Pomógł: 0
Dołączył: 30.06.2007

Ostrzeżenie: (20%)
X----


Witam ponownie po testowaniu skryptu zauwazylem kolejny mankament tyczacy sie licznika odwiedzin.Zauwazylem iz kiedy wejde na stronke to licznik doda kolejna wartosc lecz tylko raz jak raz zapisze sobie nr ip w pliku banned_ip.txt to juz na zawsze a powinno z tego pliku kasowac sie nr ip po jakims czasie a tu sie nie kasuje i jak juz wejde np na drugi dzien to i tak licznik nie naliczy tego?(IMG:http://forum.php.pl/style_emoticons/default/questionmark.gif) (IMG:http://forum.php.pl/style_emoticons/default/questionmark.gif) (IMG:http://forum.php.pl/style_emoticons/default/questionmark.gif) (IMG:http://forum.php.pl/style_emoticons/default/questionmark.gif) (IMG:http://forum.php.pl/style_emoticons/default/questionmark.gif) (IMG:http://forum.php.pl/style_emoticons/default/questionmark.gif) (IMG:http://forum.php.pl/style_emoticons/default/questionmark.gif) (IMG:http://forum.php.pl/style_emoticons/default/questionmark.gif) (IMG:http://forum.php.pl/style_emoticons/default/questionmark.gif) (IMG:http://forum.php.pl/style_emoticons/default/questionmark.gif)
Go to the top of the page
+Quote Post
phpion
post
Post #3





Grupa: Moderatorzy
Postów: 6 072
Pomógł: 861
Dołączył: 10.12.2003
Skąd: Dąbrowa Górnicza




Cytat(uczaj21 @ 19.05.2009, 21:27:33 ) *

Masz ewidentne problemy z przekazaniem własnych myśli.

Jeżeli już znalazłeś błąd to czy próbowałeś go wyeliminować? Wydaje mi się, że czekasz aż ktoś zrobi to za ciebie... takie coś nazywa się zleceniem prac.
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: 6.10.2025 - 09:19