Ohjeet laskurin asentamiseen:
1: Tallenna ensimmäinen koodinpätkä haluamaasi paikkaan.
2: Tee tyhjä kavijalaskuri.txt tiedosto, ja upi nettiin ja chmoodaa se 777:lla. Yleensä Cute FTP:ssä CHMod toiminnon löydät kun klikkaat tiedostoa oikealla hiiren korvalla ja sieltä etsit ja ruksaat kaikki ne Exceute, Write ja Readit, ja tulee 777.
3: Lisää rivi include("kavijalaskuri.php");
sivulle, jonka kävijät pitää laskea.
Huom! Muista uppia index.htm (missä laskuri sijaitsee) tiedosto samaan aikaan kuin kavijalaskuri.txt (ei toki ole pakollista)
kavijalaskuri.php
<?php $tiedosto="kavijalaskuri.txt"; if(!file_exists($tiedosto)) { $kahva=fopen($tiedosto,"w+"); $laskuri=1; fwrite($kahva,$laskuri); fclose($kahva); } $kahva=fopen($tiedosto,"r"); $laskuri=fread($kahva, filesize($tiedosto)); fclose($kahva); $kahva=fopen($tiedosto,"w+"); if(!$c) { $laskuri=$laskuri+1; echo "Sivuillani on käyty <b>$laskuri</b> kertaa<br>"; } fwrite($kahva,$laskuri); fclose($kahva); ?>
Esimerkki käytöstä
<html> <head> <title>Kävijälaskurin malli</title> <style type="text/css"> a { color: black; text-decoration: none; } a:link { color: black; text-decoration: none; } a:visited { color: black; text-decoration: none; } a:active { color: black; text-decoration: none; } a:hover { color: red; text-decoration: none; } .font { font-family: Verdana; font-size: 9px; font-color: black } </style> </head> <body> <font class="font"> <?php include("kavijalaskuri.php"); ?> Copyright 2002 <b><a href="http://www.paasivaara.com">Paasivaara.com</a></b> </font> </body> </html>
Jooh.. jos ongelmia tulee, pistä messua irkissä (nick: drinn, @ Quakenet & IRCNet) tai sähköpostin kautta. :)
Kevyt ja kätevä =)
Tuo ei lukitse tiedostoa joten enpä käyttäisi. Ja chmod 777 ei ole kovin hyvä idea.
Aivan, tiedosto kannattaa lukita aina, kun siihen kirjoitetaan. Ja CHMOD 666 riittää ihan hyvin...
H0h0 drinn :DDD
varmaa ite tehny ton??? :D
Joskus sanonoit irkissä et vaa kopioit muitten scriptei ja silleee :D
HAHAH!! mureakuhassa ihan sama vinkki! et ees viittiny vähä muuttaa.. ei helvetti
Itse käytän tuota juuri nyt.. kun sain eilen php-tuen niin että pääsen alkuun. muuten hyvä mut 777 oikat ei oo hyvä idea...
Itse käytän tuota juuri nyt.. kun sain eilen php-tuen niin että pääsen alkuun. muuten hyvä mut 777 oikat ei oo hyvä idea...
Ehh... Sama hoituu näin:
Voisko joku tohon äkkiä väsätä vielä semmosen että laskisi vain uniikit kävijät? Itselläni on ollut vähän ongelmia sen toteuttamisessa.
ei baga-
Mitä muuten on nuo uniikit kävijät?
Tässä olisi koodi joka laskee vain uniikit kävijät:
<?PHP #LASKURI by:DrKafka $file="kavijalaskuri.txt"; IF(!IS_WRITABLE($file)){DIE("Tiedostolla ".$file." ei ole kirjoitus oikeuksia!");} $ip=EXPLODE(".",GETENV("REMOTE_ADDR")); $ip=$ip[0].'.'.$ip[1].'.'.$ip[2]; $f=FILE($file); $s=true; FOR($i=0;$i<COUNT($f);$i++)IF($ip==TRIM($f[$i])){$s=false;BREAK;} IF($s==true){$fp=FOPEN($file, "a");FLOCK($fp,2);FWRITE($fp,$ip."\r\n");FCLOSE($fp);} $c=COUNT(FILE($file)); echo 'Sivuillasi on käynyt <B>'.$c.'</B> uniikkia käyttäjää!'; ?>
Vähän parannettu versio:
<?php $tiedosto="kavijalaskuri.txt"; if(!file_exists($tiedosto)) { $kahva=fopen($tiedosto,"w+"); $laskuri=1; fwrite($kahva,$laskuri); fclose($kahva); } else { // Luodaan tiedosto "kavijalaskuri.txt" ja avataan se $kahva=fopen($tiedosto,"x+"); $laskuri=1; fwrite($kahva,$laskuri); fclose($kahva); } $kahva=fopen($tiedosto,"r"); $laskuri=fread($kahva, filesize($tiedosto)); fclose($kahva); $kahva=fopen($tiedosto,"w+"); if(!$c) { $laskuri=$laskuri+1; echo "Sivuillani on käyty <b>$laskuri</b> kertaa<br>"; } fwrite($kahva,$laskuri); fclose($kahva); ?>
sanoisin, että toimivin laskuri on kafkan uniikki kävijälaskuri.
Kafkalla on hyvä laskuri. Mutta ihan tohon oikeaankin niin mieluummin ne 640-oikat ja chown apache:apache niin sekin asia on vähän varmempi. Tämä tietty siis vain jos sellaiseen on mahdollisuus.
Minusta 660 riittää. 640 ei others pysty kirjottaa.
Ihan varteenotettava tuo kävijälaskurisi, olen monesti miettinyt miten semmoinen tehtäisiin ja tuon sinun pohjaltasi kasasin tämän..
<?php # Täysin käyttövapaa versio. 24.11.2007 / Vasta_alkaja # Tiedostojen sijainnit $file_location="ipaddress.txt"; $file_location_two="all.txt"; # Tarkistetaan selaimen ip-osoite $ipAddress= $_SERVER['REMOTE_ADDR']; $file = file($file_location); $ei_loydetty = true; for($i=0; $i<COUNT($file); $i++) if($ipAddress==TRIM($file[$i])) { echo 'Mukavaa, että tulit käymään sivuillamme uudelleen <br />'; $ei_loydetty = false; $fl2 = fopen($file_location_two, "a+"); fwrite($fl2, '1' ."\r\n"); break; } if($ei_loydetty == true) { # Jos tiedostoa ei ole vielä olemassa, luodaan se. $fl = fopen($file_location, "a+"); fwrite($fl,$ipAddress."\r\n"); fclose($file_location); } $calculate = count(file($file_location)); $calculate2 = count(file($file_location_two)); echo 'Sivuillamme vieraillut <b>'. $calculate .'</b> uniikkia käyttäjää!<br/>'; echo 'Sivuillamme on ladattu <b>'. $calculate2 .'</b> käyttäjää!'; ?>
Tein oman laskurin:
Uniikit taisi jääda tuosta pois
kafka kirjoitti:
Tässä olisi koodi joka laskee vain uniikit kävijät:
<?PHP #LASKURI by:DrKafka $file="kavijalaskuri.txt"; IF(!IS_WRITABLE($file)){DIE("Tiedostolla ".$file." ei ole kirjoitus oikeuksia!");} $ip=EXPLODE(".",GETENV("REMOTE_ADDR")); $ip=$ip[0].'.'.$ip[1].'.'.$ip[2].'.'.$ip[3]; $f=FILE($file); $s=true; FOR($i=0;$i<COUNT($f);$i++)IF($ip==TRIM($f[$i])){$s=false;BREAK;} IF($s==true){$fp=FOPEN($file, "a");FLOCK($fp,2);FWRITE($fp,$ip."\r\n");FCLOSE($fp);} $c=COUNT(FILE($file)); echo 'Sivuillasi on käynyt <B>'.$c.'</B> uniikkia käyttäjää!'; ?>
Yllä tallentaa koko IP:n eikä aluetta. En tiedä oliko tarkoituksella jätetty vai vahingossa. Hyvä koodi kuitenkin.
Aihe on jo aika vanha, joten et voi enää vastata siihen.