Determiner le système d'exploitation d'un visiteur

Soyez le premier à donner votre avis sur cette source.

Snippet vu 5 685 fois - Téléchargée 30 fois

Contenu du snippet

Fonction avec en paramètre la variable $HTTP_USER_AGENT et renvoie une chaine contant le sytème d'exploitation.

Source / Exemple :


// *********************************************
//  EN paramètre la variable $HTTP_USER_AGENT
//  Retourne le nom du sytème
//************************************************
function Os($monSysteme)
{
	
	if (eregi("Windows NT 5.1",$monSysteme))
		$systeme="Windows XP";
	else if (eregi("Windows NT 5.0",$monSysteme))
		$systeme="Windows 2000";
	else if ((eregi("Windows NT 4.0",$monSysteme)) || (eregi("Windows NT",$monSysteme)))
		$systeme="Windows NT";
	else if ((eregi("Windows 98",$monSysteme)) and (eregi("9x",$monSysteme)))
		$systeme="Windows ME";
	else if ((eregi("Windows 98",$monSysteme)) || (eregi("Win98",$monSysteme)))
		$systeme="Windows 98";
	else if (eregi("Windows 95",$monSysteme))
		$systeme="Windows 95";
	else if (eregi("Mac",$monSysteme))
		$systeme="Macintosh";
	else if (eregi("Linux",$monSysteme))
		$systeme="Linux";
	else if (eregi("Apple",$monSysteme))
		$systeme="Apple";
	else if (eregi("FreeBSD",$monSysteme))
		$systeme="FreeBSD";
	else if (eregi("Unix",$monSysteme))
		$systeme="Unix";
	else
		$systeme="Indeterminé";
		
	return $systeme;	
}

A voir également

Ajouter un commentaire Commentaires
webdeb Messages postés 488 Date d'inscription samedi 5 avril 2003 Statut Membre Dernière intervention 31 mars 2009 4
9 avril 2007 à 23:59
regarde le chapitre des tableaux sur la doc officielle : http://fr.php.net/arrays
cs_miata Messages postés 86 Date d'inscription mardi 31 août 2004 Statut Membre Dernière intervention 19 août 2008
9 avril 2007 à 23:17
Surement, ce n'est pas la premiere fois que l'on me le suggère ...
Mais comment on fait au fait ?
webdeb Messages postés 488 Date d'inscription samedi 5 avril 2003 Statut Membre Dernière intervention 31 mars 2009 4
9 avril 2007 à 22:39
En plaçant les valeurs possibles dans un tableau ce serait quand même plus intelligent non ?
cs_miata Messages postés 86 Date d'inscription mardi 31 août 2004 Statut Membre Dernière intervention 19 août 2008
29 déc. 2006 à 13:38
if (strstr($_SERVER["HTTP_USER_AGENT"], "Windows NT 5.2")) {echo "Windows Server 2003";}
if (strstr($_SERVER["HTTP_USER_AGENT"], "Windows NT 6.0")) {echo "Windows Vista";}
peoplehard Messages postés 26 Date d'inscription samedi 26 avril 2003 Statut Membre Dernière intervention 26 novembre 2008
11 févr. 2004 à 15:55
Ou aussi:

if (strstr($_SERVER["HTTP_USER_AGENT"], "Windows NT 5.1")) {
echo "Windows XP";
}else{
if (strstr($_SERVER["HTTP_USER_AGENT"], "Windows NT 5.0")) {
echo "Windows 2000";
if (strstr($_SERVER["HTTP_USER_AGENT"], "Windows 98")) {
echo "Windows 98";
}else{
if (strstr($_SERVER["HTTP_USER_AGENT"], "Windows 95")) {
echo "Windows 95";
}else{
if (strstr($_SERVER["HTTP_USER_AGENT"], "Linux")) {
echo "Linux";
}else{
if (strstr($_SERVER["HTTP_USER_AGENT"], "Unix")) {
echo "Unix";
}else{
if (strstr($_SERVER["HTTP_USER_AGENT"], "FreeBSD")) {
echo "FreeBSD";
}else{
if (strstr($_SERVER["HTTP_USER_AGENT"], "Mac")) {
echo "Macintosh";
}else{
if (strstr($_SERVER["HTTP_USER_AGENT"], "Apple")) {
echo "Apple";
}
}
}
}
}
}
}
}
}
Afficher les 6 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.