Hier ist's
<?
$url = "counter.txt";
$file = file($url);
for ($i = 0; $file[$i]; $i++){$read = $read.$file[$i];}
$ips=Array();
$dp=opendir("iplog");
while($ip=readdir($dp)) {
if(!ereg("^\.$",$ip) && !ereg("^\.\.$",$ip)) {
$ips[]=$ip;
}
}
closedir($dp);
for($i=0;$i<count($ips);$i++) {
if($REMOTE_ADDR == $ips[$i]) {
$datei=file("iplog/$ips[$i]");
$ipSetZeit=$datei[0];
}
}
if(isset($ipSetZeit) && !(round((time()-$ipSetZeit)/60)>15)) {} else {
$stand = $read;
$stand++;
$read = $stand;
$zahl = $read;
$laenge = strlen($zahl);
$fp = fopen($url, "w");
flock($fp,2);
fputs($fp,$read);
flock($fp,3);
fclose($fp);
$fp=fopen("./iplog/$REMOTE_ADDR","w");
fwrite($fp,time());
fclose($fp);
}
$zahl = $read;
$laenge = strlen($zahl);
if ($laenge >= "5") {$xa = $zahl[$laenge-5];}
if ($laenge >= "4") {$xb = $zahl[$laenge-4];}
if ($laenge >= "3") {$xc = $zahl[$laenge-3];}
if ($laenge >= "2") {$xd = $zahl[$laenge-2];}
if ($laenge >= "1") {$xe = $zahl[$laenge-1];}
echo "<img src=images/0$xa.gif border=0>";
echo "<img src=images/0$xb.gif border=0>";
echo "<img src=images/0$xc.gif border=0>";
echo "<img src=images/0$xd.gif border=0>";
echo "<img src=images/0$xe.gif border=0>";
?>
Das Script funktioniert ja eigentlich so wie es soll. Es wird geprüft, ob diese IP den Counter nicht gerade eben schon mal hochgezählt hat und wenn dies nicht der Fall ist wird diese IP als File in dem Verzeichnis IPLOG gespeichert und die aktuelle Zeit reingeschrieben und der Counter wird um 1 erhöht.
Allerdings wenn ich
http://www.melzi.f2s.com/php/ip.php ausführe (da hab ich bloß echo $REMOTE_ADDR dirnstehen) wird mir immer 127.0.0.1 angezeit!
Woran kann das liegen??
Danke für die HILFE!!
thx euer Melzi