comment récupérer le nom du pays grâce a l adresse ip
Posté : 30 avr. 2021, 17:53
bonjour a tous
j ai un code qui me permet de savoir quelle adresse ip , a quelle heure , avec quel système d exploitation et quelle url a été visité
je suppose qu il doit y avoir des erreurs de syntaxe mais cela fonctionne
je souhaiterais a présent connaître le pays du visiteur
merci de l aide
j ai un code qui me permet de savoir quelle adresse ip , a quelle heure , avec quel système d exploitation et quelle url a été visité
je suppose qu il doit y avoir des erreurs de syntaxe mais cela fonctionne
je souhaiterais a présent connaître le pays du visiteur
merci de l aide
Code : Tout sélectionner
<?php
$user_agent = getenv("HTTP_USER_AGENT");
if (strpos($user_agent, "Win") !== FALSE)
$os = "Windows";
elseif ((strpos($user_agent, "Mac") !== FALSE) || (strpos($user_agent, "PPC") !== FALSE))
$os = "Mac";
elseif (strpos($user_agent, "Linux") !== FALSE)
$os = "Linux";
elseif (strpos($user_agent, "FreeBSD") !== FALSE)
$os = "FreeBSD";
elseif (strpos($user_agent, "SunOS") !== FALSE)
$os = "SunOS";
elseif (strpos($user_agent, "IRIX") !== FALSE)
$os = "IRIX";
elseif (strpos($user_agent, "BeOS") !== FALSE)
$os = "BeOS";
elseif (strpos($user_agent, "OS/2") !== FALSE)
$os = "OS/2";
elseif (strpos($user_agent, "AIX") !== FALSE)
$os = "AIX";
else
$os = "Autre";
/*** Après on fait ce qu'on souhaite de l'information :
* affichage, stockage dans une base de données ...
**/
echo $os;
$filename = 'test.txt';
if(isset($_SERVER['HTTP_X_FORWARDED_FOR']))
$somecontent=$_SERVER['HTTP_X_FORWARDED_FOR'];
else
$somecontent=$_SERVER['REMOTE_ADDR'];
$date=$_SERVER['REQUEST_TIME'];
//$adresse=$_SERVER['HTTP_HOST'];
$date1 = date('Y-m-d H:i:s', $date +7200); // Date du jour
if(isset($_SERVER['HTTPS']) && $_SERVER['HTTPS'] === 'on')
$link = "https";
else
$link = "http";
// Here append the common URL characters.
$link .= "://";
// Append the host(domain name, ip) to the URL.
$link .= $_SERVER['HTTP_HOST'];
// Append the requested resource location to the URL
$link .= $_SERVER['REQUEST_URI'];
setlocale(LC_TIME, "fr_FR");
// Assurons nous que le fichier est accessible en écriture
if (is_writable($filename)) {
// Dans notre exemple, nous ouvrons le fichier $filename en mode d'ajout
// Le pointeur de fichier est placé à la fin du fichier
// c'est là que $somecontent sera placé
if (!$handle = fopen($filename, 'a')) {
echo "Impossible d'ouvrir le fichier ($filename)";
exit;
}
// Ecrivons quelque chose dans notre fichier.
echo $date2;
if (fwrite($handle,strftime("%A %d %B %G %H:%M:%S", strtotime($date1))."\t $os.\t $somecontent.\t $link.\r\n") === FALSE) {
echo "Impossible d'écrire dans le fichier ($filename)";
exit;
}
echo "L'écriture de ($somecontent) dans le fichier ($filename) a réussi";
fclose($handle);
} else {
echo "Le fichier $filename n'est pas accessible en écriture.";
}
?>