Salut, aveam nevoie de un script care sa-mi salveze adresele de IP ale vizitatorilor, l-am facut, merge si ma plictiseam asa ca am zis sa-l postez ...
Nu e chiar un script, ci o functie mititica
Ce face aceasta functie?
Inregistreaza intr-un fisier text(TXT) adresa IP a vizitatorilor dar cu conditia ca fisierul respectiv sa nu contina adresa IP a vizitatorului(Pe scurt, sa scrie doar odata adresa)
Functie PHP:
De preferat bagati aceasta functie in fisierul cu functii al site-ului vostru sau in index.
Ati declarat functia, bun acum executati-o! De preferat puneti acea linie in index-ul site-ului dvs.
Si daca doriti sa aveti si un log care inregistreaza mereu adresele IP, pentru a stii cu exactitate de cate ori un vizitator a accesat site-ul vostru, folositi aceasta functie:
Ati declarat functia, bun acum executati-o! De preferat puneti acea linie in index-ul site-ului dvs.
Nu e chiar un script, ci o functie mititica
Ce face aceasta functie?
Inregistreaza intr-un fisier text(TXT) adresa IP a vizitatorilor dar cu conditia ca fisierul respectiv sa nu contina adresa IP a vizitatorului(Pe scurt, sa scrie doar odata adresa)
Functie PHP:
Cod: Selectaţi tot
function scrie_ip_la_vizitare() {
//// Exygo
if (!empty($_SERVER['HTTP_CLIENT_IP'])) {
$ip = $_SERVER['HTTP_CLIENT_IP'];
}
elseif (!empty($_SERVER['HTTP_X_FORWARDED_FOR'])) {
$http = $_SERVER['HTTP_X_FORWARDED_FOR'];
$tmpip=explode(",", $http);
$ip = trim($tmpip[0]);
}
else {
$ip = $_SERVER['REMOTE_ADDR'];
}
//// Acum ca am aflat IP-ul sa compunem continutul
$time = date("h:i:s A l - dS F Y"); // Timpul in format ORA:MINUT:SECUNDA [PM SAU AM] ZIUA - DATA LUNA AN
$ip_adress = "IP: ".$ip."\r\nTime: ".$time."\r\n[SCRIPT] BY Exygo\r\n\r\n\r\n"; // \r\n este un spatiu pentru a delimina liniile
$txt_dir = '[LOG] IP UNICE VIZITATORI.txt'; // directorul in care sa se salveze fisierul
if ( !file_exists($txt_dir)) { // VERIFICA SA NU FIE CREAT DEJA FISIERUL
$file = fopen($txt_dir,'a'); // declaram file
fwrite($file,$ip_adress); // declaram actiunea pentru file, in cazul nostru write iar dupa virgula ce sa scrie
fclose($file); // inchidem actiunea pentru a nu se repeta
}
else { // daca exista un fisier ->
// declaram si read pentru a face alta verificare
$file = fopen($txt_dir, 'r');
$read_txt = fread($file, filesize($txt_dir) + 1);
fclose($file);
//
// verifica daca fisierul contine o portiune de text
if( preg_match( "/$ip/", $read_txt ) ) {
return;
// daca contine acelas IP numai scrie din nou
}
else { // daca nu gaseste acelas IP deja scris in fisier, atunci il scrie
$file = fopen($txt_dir,'a');
fwrite($file,$ip_adress);
fclose($file);
}
}
}Cod: Selectaţi tot
scrie_ip_la_vizitare();Si daca doriti sa aveti si un log care inregistreaza mereu adresele IP, pentru a stii cu exactitate de cate ori un vizitator a accesat site-ul vostru, folositi aceasta functie:
Cod: Selectaţi tot
function scrie_ip_accesari() {
////
if (!empty($_SERVER['HTTP_CLIENT_IP'])) {
$ip = $_SERVER['HTTP_CLIENT_IP'];
}
elseif (!empty($_SERVER['HTTP_X_FORWARDED_FOR'])) {
$http = $_SERVER['HTTP_X_FORWARDED_FOR'];
$tmpip=explode(",", $http);
$ip = trim($tmpip[0]);
}
else {
$ip = $_SERVER['REMOTE_ADDR'];
}
//// Acum ca am aflat IP-ul sa compunem continutul
$time = date("h:i:s A l - dS F Y"); // Timpul in format ORA:MINUT:SECUNDA [PM SAU AM] ZIUA - DATA LUNA AN
$ip_adress = "IP: ".$ip."\r\nTime: ".$time."\r\n[SCRIPT] BY Exygo\r\n\r\n\r\n"; // \r\n este un spatiu pentru a delimina liniile
$txt_dir = '[LOG] ACCESARI VIZITATORI.txt'; // directorul in care sa se salveze fisierul
$file = fopen($txt_dir,'a'); // declaram file
fwrite($file,$ip_adress); // declaram actiunea pentru file, in cazul nostru write iar dupa virgula ce sa scrie
fclose($file); // inchidem actiunea pentru a nu se repeta
}Cod: Selectaţi tot
scrie_ip_accesari();




