Takže, ako som naznačil v popise, v tomto článku sa dozviete niečo o tom, ako sa zisťujú informácie o návštevníkovi stránky. Pre profesionálov nič nové, ale začiatočníci si aspoň ozrejmia prácu s PHP premennými a tvorením tabuliek v MySql...
So, lets begin...
Ako prvé musíme v MySql vytvoriť tabuľku do ktorej sa budú ukladať naše "logy". Môžeme to spraviť napr. v
PhpMyAdminovi... Tabuľka sa bude volať "pristupy" (bez úvodzoviek :p) a bude mať 6 polí...
id - Zoradenie prístupov
datum - Dátum a čas prístupu
ip - IP Adresa návštevníka
hostname - Hostname návštevníka
prehliadac - Info o použitom prehliadači
referer - Odkiaľ návštevník prišiel
1.) Pole "id"
meno - id
typ - int(11)
extra - Auto_Increment
kľúč - primary //zabodkujeme primárny kľúč
2.) Pole "datum"
meno - datum
typ - datetime
3.) Pole "ip"
meno - ip
typ - varchar(20)
4.) Pole "hostname"
meno - hostname
typ - varchar(255)
5.) Pole "prehliadac"
meno - prehliadac
typ - varchar(255)
6.) Pole "referer"
meno - referer
typ - varchar(255)
Teraz napíšeme samotný script, ktorý bude do nadefinovaných premenných ukladať informácie z globálnej premennej $_SERVER.. Script umiestnime tam, kde chceme aby sa začalo logovanie... V našom prípade teda na začiatok index.php (pred tag "head" ;)
----------------------------------------------
$ip = $_SERVER['REMOTE_ADDR']; //zistenie ip
$datum = date ("Y:m:d h-i-s"); //zistenie datumu
$browser = $_SERVER['HTTP_USER_AGENT']; //zistenie prehliadaca
$referer = $_SERVER['HTTP_REFERER']; //zistenie textu v prehliadaci pred vstupom
$_GET['$referer']; //vybratie retazca z prehliadaca
$hostname = gethostbyaddr ($_SERVER['REMOTE_ADDR']); //zistenie hostname podla ip
----------------------------------------------
Táto spodná časť kódu zabezpečí pripojenie na databázu a vloženie premenných do jednotlivých polí...
----------------------------------------------
$connect = MySql_connect("MySql host","user name db","heslo");
MySql_Select_Db ("nazov db");
$sql = "INSERT INTO pristupy VALUES ('' , '$datum' , '$ip' , '$hostname' , '$prehliadac' , '$referer')";
$result = mysql_query($sql);
mySQL_Close($connect);
----------------------------------------------
Tha, a to by bolo asi tak všetko... Ak sa vám zdá málo, môžete doplniť nejaké funkcie a možnosti do komentárov, alebo využiť služby, ako
TOPlist, alebo
GOOGLE Analytics...
~ written by Daan ~