txt counter
lima-city → Forum → Programmiersprachen → PHP, MySQL & .htaccess
anfragen
anschreiben
anzahl
beitrag
besucher
checken
count
counter
datei
klicken
quellen
rewind
speicher
sperren
tutorial
zeile
-
ich Will bei einem ip check ausgeben wie viele verschiedene IP?s bereits ausgegeben sind dazu muss ich nat?rlich die ips speichern.
Aber
ich will einen txt Counter machen
da hei?t ich muss die zahl die der Counter ausgibt und die ip in txt dateien schreiben.
und der Counter darf bei einer ip die es schon gibt nicht weiterz?hlen.
also
hier mal mein IPcheck + Countercode
php echo "<html> <head> <title>IP Check</title> </head> <body>"; //das hier ist der Counter $file = "counter.txt"; if(file_exists($file)) { $fp=fopen($file, "r+"); $zahl=fgets($fp); $zahl++; rewind($fp); flock($fp,2); fputs($fp,$zahl); flock($fp,3); fclose($fp); } else{ $fp=fopen($file, "w"); $zahl="1"; fputs($fp,$zahl); fclose($fp); } $zahl=sprintf($zahl); echo "Hier wurden bereits <b>$zahl</b> verschiedene IP?s ausgegeben<br /><br />"; //Hier wird die ip ausgegeben $ip = getenv("REMOTE_ADDR"); echo " Ihre IP: <b>$ip </b><br />"; echo " </body> </html>";
also wie muss ich das mit den ip?s machen?
und nochwas alles was mit DB?s zu tun hat nein.
es soll ein reiner txt Counter sein so das er auch ohne DB l?uft
mfg
web4me
Beitrag ge?ndert am 21.10.2005 10:47 von web4me -
Diskutiere mit und stelle Fragen: Jetzt kostenlos anmelden!
lima-city: Gratis werbefreier Webspace für deine eigene Homepage
-
netter Nachbar Google hilft:
<?php $file ='ip.txt'; // wo soll der Counter geschrieben werden $output ='besucher'; $sperre ='0'; // 0 = jeder Klick, 1 = jede IP $counter=@fopen($file,"r"); if ($counter){ $line=fgets($counter,20); $tmpArray=explode("|",$line); $a=$tmpArray[0]; $ip=$tmpArray[1]; fclose($counter);} else $a=0; if ($ip!=$REMOTE_ADDR||!$sperre) $a++; printf('%s',str_replace('besucher',$a,$output)); $tmpArray[0]=$a; $tmpArray[1]=$REMOTE_ADDR; $line=implode("|",$tmpArray); $counter=fopen($file,"w"); fputs($counter,$line); fclose ($counter); ?>
Quelle: http://www.arne-home.de/tutorial/counter.html -
sry aber dabei wird auch nicht das ausgeben was ich will
ich will das alle ips gespeichert werden und diese dann get?hlt.
ich glaub so ist es einfacher ausgedr?ckt ^^ -
$file=file("ip.txt"); //speichert die zeilen der datei als array $zeilen=count($file); //z?hlt die Zeilen for ($i=0;$i<$zeilen;$i++) echo trim($file[$i])."<br />"; //gibt alle eintr?ge durch Zeilenumbr?che getrennt aus echo "<br />".$zeilen; //gibt die anzahl der zeilen aus.
jetzt musst du die nur noch zusammenbauen
Beitrag ge?ndert am 21.10.2005 13:43 von ps3web
Beitrag ge?ndert am 21.10.2005 13:43 von ps3web -
web4me schrieb:
sry aber dabei wird auch nicht das ausgeben was ich will
ich will das alle ips gespeichert werden und diese dann get?hlt.
ich glaub so ist es einfacher ausgedr?ckt ^^
Das ist doch sinnlos. Es w?re besser, wenn du die IP's nur f?r eine bestimmte Zeit (10 Stnden oder so) sperrst. -
Also mein ungemein unverbindlicher Tipp
->Tutorials
Ansonsten -> mein grobes tut:
2 Dateien, eine speichert die IPs getrennt durch \'#\'. Wenn eine anfrage kommt wird per explode und in_array gewucht ob die IP da is, wenn ja wird nichts gemacht, ansonsten wird in der anderen datei einfach eine zahl um 1 nach oben gesetzt...
PS: kannst mich auch anschreiben, habe so einen counter und er is ausgereift... -
Diskutiere mit und stelle Fragen: Jetzt kostenlos anmelden!
lima-city: Gratis werbefreier Webspace für deine eigene Homepage