Afficher des informations concernant le visiteur

Soyez le premier à donner votre avis sur cette source.

Snippet vu 16 641 fois - Téléchargée 27 fois

Contenu du snippet

Ce code PHP affiche la résolution, le navigateur et l'adresse IP d'un visiteur.
Rien d'extraordinaire, mais des parties du code peuvent être réutilisées en cas de besoin.

Source / Exemple :


<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN" "http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="fr">
	<head>
		<meta http-equiv="Content-Type" content="application/xhtml+xml;charset=UTF-8" />
		<title>Vos informations</title>
		<?php
			if(!$ip = getenv('HTTP_CLIENT_IP'))
			{
				if(!$ip = getenv('HTTP_X_FORWARDED_FOR'))
				{
					if(!$ip = $_SERVER['REMOTE_ADDR'])
					{
						$ip = getenv('REMOTE_ADDR');
					}
				}
			}
			if(!(isset($_POST['height']) && isset($_POST['width']) && isset($_POST['nb_plugins'])))
			{
		?>
		<script type="text/javascript">
		<!--/*--><![CDATAcomplete()
			{
				document.infos = document.getElementById("infos");
				document.infos.nb_plugins.value = navigator.plugins.length;
				document.infos.width.value = screen.width;
				document.infos.height.value = screen.height;
				document.infos.submit();
			}
		/*]>*/-->
		</script>
	</head>
	<body onload="complete();">
		<form id="infos" action="<?php echo $_SERVER['REQUEST_URI']; ?>" method="post">
			<input type="hidden" name="width" />
			<input type="hidden" name="height" />
			<input type="hidden" name="nb_plugins" />
		</form>
		<?php
			}
			else
			{
		?>
	</head>
	<body>
		<p>Votre résolution est de <?php echo $_POST['width']; ?>×<?php echo $_POST['height']; ?>.</p>
		<p>Vous avez <?php echo $_POST['nb_plugins']; ?> plugins installés.</p>
		<?php 
			}
		?>
		<p>Votre navigateur est <?php echo $_SERVER['HTTP_USER_AGENT']; ?>.</p>
		<p>Votre adresse IP est <?php echo $ip; ?>.</p>
	</body>
</html>

Conclusion :


Vous pouvez voir ce que ce script donne sur http://spidermario.free.fr/infos_visiteur.php

A voir également

Ajouter un commentaire Commentaires
Messages postés
6
Date d'inscription
dimanche 3 décembre 2006
Statut
Membre
Dernière intervention
4 mars 2008

Pour les webmasters qui le désirent, je fournis un script PHP sur mon site Internet http://www.WeLive.fr dans la rubrique Géolocalisation par IP.
Le script PHP vous retourne les informations sous forme de variables PHP : Pays, Drapeau du pays, Région-Département-Code Postal pour la France, Ville.
Celui-ci nécessite une inscription préalable aux fins d'éviter que n'importe qui l'utilise.

A bientôt

WeLive.fr
Messages postés
12303
Date d'inscription
mardi 10 février 2004
Statut
Modérateur
Dernière intervention
30 juillet 2012
41
pour la localisation du visiteur, faut faire un whois sur son ip, mais on n'a aucune précision, et aucune certitude...
Messages postés
954
Date d'inscription
mardi 11 mai 2004
Statut
Membre
Dernière intervention
11 novembre 2008
2
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="fr" lang="fr"><head>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
<title>Vos informations</title>
<style type="text/css" media="screen">
<!--
.Gras {
font-weight: bolder;
}

.marge_plug_ins {
margin-left: 25px;
}
-->
</style>
</head>

<script type="text/javascript">
<!--
//******************************************************************************
// Création d' un element div ( Merci à Coucou747 )
//******************************************************************************
var box = document.createElement('div');
document.body.appendChild(box);// On envoie le tout

//******************************************************************************
// Largeur X Hauteur
//******************************************************************************
box.innerHTML = 'Votre résolution est de ' + screen.width + ' X ' + screen.height + '.
';

//******************************************************************************
// Plug-ins
//******************************************************************************
// Nombre de plug-ins installés
var nbplugin = navigator.plugins.length;
if(nbplugin){
box.innerHTML += 'Plug-ins installés ( ' + nbplugin + ' ) :
';

var i = -1;
while (i < nbplugin){// Affichage des noms des plug-ins
i++;
box.innerHTML += '
' + navigator.plugins[i].name + '
';
}
}else{
box.innerHTML += 'Il n\' y a aucun plug-ins installé.
';
}
//-->
</script>
<?php
//******************************************************************************
// On prend l' ip de la meilleure manière qu'il soit
//******************************************************************************
if(IsSet($_SERVER['HTTP_X_FORWARDED_FOR'])){
$ip = $_SERVER['HTTP_X_FORWARDED_FOR'];

}elseif(IsSet($_SERVER['HTTP_CLIENT_IP'])){
$ip = $_SERVER['HTTP_CLIENT_IP'];

}else{
$ip = $_SERVER['REMOTE_ADDR'];
}

//******************************************************************************
// Navigateur
//******************************************************************************
$nav = 'Inconnu';
$browser = array('Internet Explorer'=>'MSIE', 'Firefox', 'Mozilla', 'Netscape', 'Safari', 'Konqueror', 'Epiphany', 'Lynx', 'Opera');
foreach($browser as $cle => $val){
if(strpos($_SERVER['HTTP_USER_AGENT'], $val)){
if(is_numeric($cle)){
$nav = $val;
}else{
$nav = $cle;
}
break;
}
}

echo 'Votre navigateur est ',$nav,'.
',"\r\n"
,'Voici toutes les référances de votre navigateur : ',$_SERVER['HTTP_USER_AGENT'],'.
',"\r\n"
,'Votre adresse IP est ',$ip,'.',"\r\n";
?>
</html>
Messages postés
954
Date d'inscription
mardi 11 mai 2004
Statut
Membre
Dernière intervention
11 novembre 2008
2
Salut,

>> Malalam <<
"Car la balise ne laisse pas le choix d' ajustement de l' épaisseur
-ah bon? La balise strong n'accepte pas de css...?"
>> Si mais l' épaisseur du Gras nan je préfère utiliser un span et lui donner un style avec une feuille de style ;-)

"C' est pour être sur de trouver l' ip on essaie plusieur possiblité jusqu'a trouvé l' ip.
- mais getenv () renvoie une variable d'environnement. $_SERVER contient des variables d'environnement...y a rien qui te choque ?"
>> getenv est disponnible depuis la version 3 de php alors que getenv n' est dispo que depuis la version 4. C' était en partie une question de portabilité ;-)
J' ai viré les getenv et j' ai tout transformé en $_SERVER

"Oups, je savais pas. Pourtant mes page codé en XHTML 1.0 passe sans problème.
Et il ne faut pas oublié que l' on peut utlisé la balise <script> pour faire du php et du vb (je crois).
=> Déprécié quand même, et en html 4 en plus : http://www.w3.org/TR/html4/interact/scripts.html#edef-SCRIPT"
>> C' est bon j' ai viré language="JavaScript" à contre coeur.

"strpos renvoie un entier ou false, strstr renvoie une chaîne (et l'extirpe, avant). M'est avis que c'est plus lent. En plus, tu n'as pas besoin de cette chaîne, mais juste de savoir si une chaîne est présente dans une autre."
>> Exacte 20/20 ;-)

>> Aquewel <<
Pour la localisation du visiteur aucune idée.

Voilà le code
Messages postés
143
Date d'inscription
vendredi 14 mai 2004
Statut
Membre
Dernière intervention
6 juin 2010

aussi ce qu'il seait interessant c'est de localiser le visiteur ! on peut le faire ca ?

Trouver son pays et si il est francais trouver sa région ! Ca c'est cool :-)
Afficher les 39 commentaires

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.

Le fait d'être membre vous permet d'avoir des options supplémentaires.