Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: Problem - Licznik w PHP
Forum PHP.pl > Forum > PHP
Plebanov
Mam problem bo znalazlem gdzies licznik na stronke i na localhoscie dzialal a na serwerze (yoyo.pl) zwraca mi taki blad:

Warning: gethostbyaddr() [function.gethostbyaddr]: Address is not a valid IPv4 or IPv6 address in /var/www/sites/yoyo.pl/t/v/tv-pp/include/lewa/stat.php on line 35

Kod

  1. <?
  2.  
  3.    function open($name="",$trybe="r",$value="0")
  4.        {
  5.            if(file_exists($name))
  6.                {
  7.                    $file=fopen($name, $trybe);
  8.                    flock($file, 1);
  9.                    if (filesize($name)>0) return fread(fopen($name, $trybe), filesize($name)); else return $value;
  10.                    flock($file, 3);
  11.                    fclose($file);
  12.                }
  13.        }
  14.  
  15.    function save($name="",$date="",$trybe="w")
  16.        {
  17.            if(file_exists($name))
  18.                {
  19.                    $file=fopen($name, $trybe);
  20.                    flock($file, 2);
  21.                    fwrite($file, $date);
  22.                    flock($file, 3);
  23.                    fclose($file);
  24.                }
  25.        }
  26.  
  27.    $scr[0] = "licznik/ip.txt";
  28.    $scr[1] = "licznik/dane.txt";
  29.    $scr[2] = "licznik/log.txt";
  30.  
  31.    $aktu_ip = $REMOTE_ADDR;
  32.    $host = gethostbyaddr($aktu_ip);
  33.    $aktu_czas = (date(G)*3600)+(date(i)*60)+date(s);//date(G)*60+date(i);
  34.    $czas_online = 600; // sekund (10 minut)
  35.    $czas_opuznienia = 900; // sekund (15 minut)
  36.    $data = date("Y-m-d", time());
  37.    $online = 1;
  38.    $zmienna = False;
  39.    $nowe_dane = '';
  40.  
  41.  
  42.    $dane = explode(chr(1),open($scr[1]));
  43.  
  44.    if(!strcmp($dane[2],$data))
  45.        {
  46.            $tab1 = explode(chr(1), open($scr[0]));
  47.  
  48.            for( $x = 0; $x <= count($tab1)-2; $x+=2 )
  49.                {
  50.                    if(!strcmp($aktu_ip, $tab1[$x]))
  51.                        {
  52.                            if($aktu_czas - $czas_opuznienia < $tab1[$x+1]) $zmienna=True;
  53.                        }
  54.                    else
  55.                        {
  56.                            if($aktu_czas - $czas_opuznienia < $tab1[$x+1])
  57.                                {
  58.                                    $nowe_dane .= $tab1[$x].chr(1).$tab1[$x+1].chr(1);
  59.                                    if($aktu_czas - $czas_online < $tab1[$x+1]) $online++;
  60.                                }
  61.                        }
  62.                }
  63.  
  64.            if ($zmienna == 0)
  65.                {
  66.                    $dane[0]++;
  67.                    $dane[1]++;
  68.  
  69.                    save($scr[1],$dane[0].chr(1).$dane[1].chr(1).$dane[2]);
  70.  
  71.                    $wszystko = $dane[0].chr(1).$dane[1].chr(1).$online.chr(1).date("Y-m-d".chr(1)."G:i:s", time()).chr(1).$aktu_ip.chr(1).$host.chr(1).$HTTP_REFERER.chr(1).$HTTP_USER_AGENT.chr(13).chr(10);
  72.                    save($scr[2],$wszystko,"a");
  73.                }
  74.        }
  75.    else
  76.        {
  77.            save($scr[0]);
  78.  
  79.            $dane[0]++;
  80.            $dane[1] = 1;
  81.  
  82.            save($scr[1],$dane[0].chr(1).$dane[1].chr(1).$data);
  83.  
  84.            $wszystko = $dane[0].chr(1).$dane[1].chr(1).$online.chr(1).date("Y-m-d".chr(1)."G:i:s", time()).chr(1).$aktu_ip.chr(1).$host.chr(1).$HTTP_REFERER.chr(1).$HTTP_USER_AGENT.chr(13).chr(10);
  85.            save($scr[2],$wszystko,"a");
  86.        }
  87.  
  88.    $nowe_dane .= $aktu_ip.chr(1).$aktu_czas.chr(1);
  89.    save($scr[0],$nowe_dane);
  90.    
  91.     echo '<table><tr><td>';
  92.     echo '&nbsp;&nbsp;&nbsp;<b>Użytkownicy:</b> <br>';
  93.     echo '</td></tr>';
  94.     echo '<tr><td align=right width=100>';
  95.     echo '<b>ogółem:</b>&nbsp;&nbsp;';
  96.     echo '<br>';
  97.     echo '<b>dziś:</b>&nbsp;&nbsp;';
  98.     echo '<br>';
  99.     echo '<b>on-line:</b>&nbsp;&nbsp;';
  100.     echo '</td><td>';
  101.     echo $dane[0];
  102.     echo '<br>';
  103.     echo $dane[1];
  104.     echo '<br>';
  105.     echo $online;
  106.     echo '</td></tr></table>';
  107. ?>
  108.  
  109. </div>
phpion
Dzizas... przecież masz jak byk napisane:
Cytat(Plebanov @ 4.12.2008, 17:54:34 ) *
Address is not a valid IPv4 or IPv6 address

Skąd bierzesz $REMOTE_ADDR? Może miałeś na myśli $_SERVER['REMOTE_ADDR']?
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.