ďťż
 
problem z licznikiem :( ďťż
 
problem z licznikiem :(
Zobacz wiadomości
 
Cytat
A gdyby tak się wedrzeć na umysłów górę, / Gdyby stanąć na ludzkich myśli piramidzie, / I przebić czołem przesądów chmurę, / I być najwyższą myślą wcieloną. . . Juliusz Słowacki, Kordian
Indeks BCB i MySQL subiekt gt fototapeta
 
  Witamy

problem z licznikiem :(



shingo - 09-04-2006 09:34
problem z licznikiem :(
  sciagnalem licznik jednak nie wiem dlaczego cos nie dziala. ponizej zamieszczam jego kod:
<?

if($czas == "") {
$czas = 600;
}

if($tryb == "") {
$tryb = tekstowy;
}

if($id == "") {
print(" Nie podano identyfikatora licznika ");
exit;
}

if(!file_exists($katalog)) {
mkdir($katalog,0777);
}

chdir($katalog);

$rights = 0666;
$lastippath = $id . '_last_ip';
$lasttimepath = $id . '_last_time';
$cntpath = $id . '_licznik_cnt';
$dontcount = 0;

if(!file_exists($lastippath)) {
touch($lastippath);
chmod($lastippath,$rights);
}

if(!file_exists($lasttimepath)) {
touch($lasttimepath);
chmod($lasttimepath,$rights);
}

if(!file_exists($cntpath)) {
$plik = fopen($cntpath,"w");
fputs($plik,0);
fclose($plik);
chmod($cntpath,$rights);
}

$lastip = file($lastippath);
$lasttime = file($lasttimepath);

$noi = count($ip);
$i = 0;
while($i != $noi) {
if($REMOTE_ADDR == $ip[$i]) {
$dontcount = 1;
}
$i++;
}

if((filesize($lasttimepath) != 0) and ($dontcount == 0)) {
$j = count($lasttime);
while(($doncount == 0) and ($j != 0)) {
$timel = strlen($lasttime[$j - 1]);
$tff = substr($lasttime[$j - 1],0,$timel - 1);
$time2 = time();
$diff = $time2 - $tff;
if($diff < $czas) {
$iplenght = strlen($lastip[$j - 1]);
$ipff = substr($lastip[$j - 1],0,$iplenght - 1);
if($REMOTE_ADDR == $ipff) {
$dontcount = 1;
}
} else {
break;
}
$j--;
}
}

if($dontcount == 0) {
$plik = fopen($lastippath,"a");
fputs($plik,$REMOTE_ADDR);
fclose($plik);
$plik = fopen($lastippath,"a");
fputs($plik,"\n");
fclose($plik);

$plik = fopen($lasttimepath,"a");
fputs($plik,time());
fclose($plik);
$plik = fopen($lasttimepath,"a");
fputs ($plik,"\n");
fclose($plik);

$plik = fopen($cntpath,"r");
$liczba = fgets($plik,30);
$liczba = 1 + $liczba;
fclose($plik);
$plik = fopen("$cntpath","w");
fputs($plik,$liczba);
fclose($plik);
}

if($tryb != nie_widoczny) {
$plik = fopen($cntpath,"r");
$liczba = fgets($plik,30);
fclose($plik);
$lenght = strlen($liczba);
$i = 0;
while($i != $lenght) {
$cyfra = $liczba[$i];
if($tryb == graficzny) {
switch($cyfra) {
case 0;
?>
<IMG SRC="<? print($sciezka . '0.gif') ?>" alt="0">
<?
break;
case 1;
?>
<img src="<? print($sciezka . '1.gif') ?>" alt="1">
<?
break;
case 2;
?>
<img src="<? print($sciezka . '2.gif') ?>" alt="2">
<?
break;
case 3;
?>
<img src="<? print($sciezka . '3.gif') ?>" alt="3">
<?
break;
case 4;
?>
<img src="<? print($sciezka . '4.gif') ?>" alt="4">
<?
break;
case 5;
?>
<img src="<? print($sciezka . '5.gif') ?>" alt="5">
<?
break;
case 6;
?>
<img src="<? print($sciezka . '6.gif') ?>" alt="6">
<?
break;
case 7;
?>
<img src="<? print($sciezka . '7.gif') ?>" alt="7">
<?
break;
case 8;
?>
<img src="<? print($sciezka . '8.gif') ?>" alt="8">
<?
break;
case 9;
?>
<img src="<? print($sciezka . '9.gif') ?>" alt="9">
<?
break;
}
} else {
switch($cyfra) {
case 0;
print(0);
break;
case 1;
print(1);
break;
case 2;
print(2);
break;
case 3;
print(3);
break;
case 4;
print(4);
break;
case 5;
print(5);
break;
case 6;
print(6);
break;
case 7;
print(7);
break;
case 8;
print(8);
break;
case 9;
print(9);
break;
}
}
$i++;
}
}

?>
jest to zapisane w pliku counter.php3
na stronie gdzie licznik ma byc umieszczny wklejony mam taki kod:
<?

// Ścieżka do pliku licznika np. counter.php3

$licznik = "counter.php3";

// Ścieżka do katalogu w którym będą przechowywane dane licznika

$katalog = "counter_files";

// Identyfikator licznika.
// Musi zostać podany. Jesli chcesz miec kilka niezaleznych licznikow to idenyfikatory
// musza byc rozne.

$id = "licz";

// Czas jaki musi minąć aby można było odświeżyć licznik z tego samego adresu IP (w sekundach).
// Jeśli nie zostanie podany wynosi 600 sekund czyli 10 min.

$czas = "";

// Tryb pracy licznika (nie_widoczny/graficzny/tekstowy).
// Jeśli nie zostanie podany to licznik pracuje w trybie tekstowym.

$tryb = "";

// Scieżka do plików z cyferkami w trybie graficznym.
// Musi być zakończona '/' np. http://www.cyferki.pl/cyferki/ czy licznik/cyferki/
// Pliki muszą mieć postać 0.gif, 1.gif, 2.gif ... 9.gif.

$sciezka = "";

// Zastrzeżone adresy IP z których nie można zwiększać stanu licznika.
// Możesz dodać dowolną ilość adresów, dodając kolejne linie.

$ip[] = "";
$ip[] = "";
$ip[] = "";

include("$licznik");

?>
licznik sie wyswietla jednak po uplywie 1 sec nic sie nie dzieje nawet moze minac dluzej i tak dalej nic. podczas kombinowania gdzy zmienie jedna wartosc w kodzie counter.php3 mianowicie:
$noi = count($ip);
$i = 0;
while($i != $noi) {
if($REMOTE_ADDR == $ip[$i]) {
$dontcount = 1;
}
$i++;
na taka wartosc:
$noi = count($ip);
$i = 0;
while($i != $noi) {
if($REMOTE_ADDR == $ip[$i]) {
$dontcount = 0;
}
$i++;
licznik zaczyna liczyc i reaguje na czas jaki ustalam do odswiezania jednak nie dziala mi blokowanie adresu ip i nie wiem jak to rozwizac
czy jest ktos w stanie mi pomoc??? bede bardzo wdzieczny
oba pierwsze skrypty ktore wkleilem sa orginalne przerobka jest tylko w tej czesci kilka lini wyzej.




shingo - 09-04-2006 21:02
juz nie aktualne
  juz rozwiazlem problem. zatem nieaktualne.
pozdrawiam
  • zanotowane.pl
  • doc.pisz.pl
  • pdf.pisz.pl
  • effulla.pev.pl
  • comp
    [MSSQL2000] Problem z =?ISO-8859-2?Q?tabel=B1/indeksem/zapytanie?==?ISO-8859-2?Q?m_czy_b=B3=B1d_w_bazie_danych=2E=2E=2E?= mysql i mysql-front, problem String line; if (line=="cos"){...}....problem Problemy z =?ISO-8859-2?Q?instalacj=B1_PostgreSQL_na_syste?==?ISO-8859-2?Q?mach_Windows?= [postgres] Problem z =?ISO-8859-2?Q?zmian=B1_struktury_i_z?==?ISO-8859-2?Q?ale=BFno=B6ciami=2E?= [oracle] =?ISO-8859-2?Q?zmia=BFd=BFony_przez_problem=3A_za?==?ISO-8859-2?Q?pytanie_do_hierarchi?= Problem z wartościami w MySQL :( [ MySQL and ASP and VBScript ] [PGSQL] czy ktos mial problemy z initdb pgsql 8.1 ? [MySQL] Problem z zapisem danych w bazie danych Problem z mysql - can't connect to MySQL/nietypowo...
  • zanotowane.pl
  • doc.pisz.pl
  • pdf.pisz.pl
  • coolinarny.opx.pl
  • Cytat

    Decede mihi sole - nie zasłaniaj mi słonca.
    Gdy kogoś kochasz, jesteś jak stworzyciel świata - na cokolwiek spojrzysz, nabiera to kształtu, wypełnia się barwą, światłem. Powietrze przytula się do ciebie, choćby był mróz, a ty masz w sobie tyle radości, że musisz ją rozdawać wokoło, bo się w tobie nie mieści
    Hoc fac - tak czyń.
    A tergo - od tyłu; z tyłu.
    I czarne włosy posiwieją. Safona

    Valid HTML 4.01 Transitional

    Free website template provided by freeweblooks.com