Détecter le système du visiteur sur mon site
Résolu
Utilisateur anonyme
-
Utilisateur anonyme -
Utilisateur anonyme -
A voir également:
- Détecter le système du visiteur sur mon site
- Restauration du système - Guide
- Comment détecter un traceur sur téléphone - Accueil - Confidentialité
- Site comme coco - Accueil - Réseaux sociaux
- Site de telechargement - Accueil - Outils
- Quel site remplace coco - Accueil - Réseaux sociaux
7 réponses
Et voila! https://www.commentcamarche.net/contents/790-php-les-variables-d-environnement
Pour dissocier le navigateur de l'OS, il faut parser avec un
Si je me souvient bien.
Live free, learn free, help free, Happy Hacking!
Enjoy it!
Pour dissocier le navigateur de l'OS, il faut parser avec un
$client = $_SERVER['HTTP_USER_AGENT']; $donnees = explode ($client,";"); while ($donnees) { echo $donnees; }
Si je me souvient bien.
Live free, learn free, help free, Happy Hacking!
Enjoy it!
Utilisateur anonyme
merci je vais essayer
moi j'ai ce code
pour faire la détection du navigateur
que faut t'il que je modifie pour afficher l'os
pour faire la détection du navigateur
<?php if ( strpos( $_SERVER['HTTP_USER_AGENT'], 'Firefox' ) !== FALSE ) { echo " Firefox"; } elseif ( strpos( $_SERVER['HTTP_USER_AGENT'], 'Opera' ) !== FALSE ) { echo " Opera"; } elseif ( strpos( $_SERVER['HTTP_USER_AGENT'], 'Safari' ) !== FALSE ) { echo "Safari"; } elseif ( strpos($_SERVER['HTTP_USER_AGENT'], 'MSIE' ) !== FALSE ) { echo "Internet Explorer"; } else { echo "navigateur non reconnu"; } ?>
que faut t'il que je modifie pour afficher l'os
Roh c'est moche comme code.. Tu ne met que des navigateur que tu ne connais pas.. Tu oublies plein de navigateurs:
-Konquerror
-Chrome
-Epiphany
-Iceweasel
Pour les plus utilisés (une partie sous Linux, certes, ...) sans parler de Lynx que j'adorais...
Bref, je vais essayer de te faire une réponse complète. Avec ta solution, tu cherches un mot particulier dans le "User_Agent" ce qui empèche d'avor toutes les infos, et surtout qui t'empèchera de voir un navigateur inconnu. Si on suit ton code, on peux faire ça:
Si tu veux une autre solution qui t'affiche les informations qu'il y a dans cette variable, dis le moi :)
Live free, learn free, help free, Happy Hacking!
Enjoy it!
-Konquerror
-Chrome
-Epiphany
-Iceweasel
Pour les plus utilisés (une partie sous Linux, certes, ...) sans parler de Lynx que j'adorais...
Bref, je vais essayer de te faire une réponse complète. Avec ta solution, tu cherches un mot particulier dans le "User_Agent" ce qui empèche d'avor toutes les infos, et surtout qui t'empèchera de voir un navigateur inconnu. Si on suit ton code, on peux faire ça:
<?php if ( strpos( $_SERVER['HTTP_USER_AGENT'], 'Firefox' ) ) { echo " Firefox"; } elseif ( strpos( $_SERVER['HTTP_USER_AGENT'], 'Opera' ) ) { echo " Opera"; } elseif ( strpos( $_SERVER['HTTP_USER_AGENT'], 'Safari' ) ) { echo "Safari"; } elseif ( strpos($_SERVER['HTTP_USER_AGENT'], 'MSIE' ) ) { echo "Internet Explorer"; } else { echo "navigateur non reconnu"; } if ( strpos( $_SERVER['HTTP_USER_AGENT'], 'Windows' )) { echo " Windows"; } elseif ( strpos( $_SERVER['HTTP_USER_AGENT'], 'Mac OS' )) { echo " Mac OS"; } else { echo "système d'exploitation non reconnu"; } /*Si tu adopte cette solution, je ferai plutôt ce script là*/ $detect_nav = TRUE; //création d'une variable pour savoir si on a réussi à trouver le navigateur if ( strpos( $_SERVER['HTTP_USER_AGENT'], 'Firefox' ) ) { echo " Firefox"; } if ( strpos( $_SERVER['HTTP_USER_AGENT'], 'Firefox' ) ) { echo " Firefox"; } elseif ( strpos( $_SERVER['HTTP_USER_AGENT'], 'Opera' ) ) { echo " Opera"; } elseif ( strpos( $_SERVER['HTTP_USER_AGENT'], 'Safari' ) ) { echo "Safari"; } elseif ( strpos($_SERVER['HTTP_USER_AGENT'], 'MSIE' ) ) { echo "Internet Explorer"; } else { echo "navigateur non reconnu"; $detect_nav = FALSE; } //On a pas réussi a trouver le navigateur, on met la variable à 0. $detect_os = TRUE; //même combat pour l'OS if ( strpos( $_SERVER['HTTP_USER_AGENT'], 'Windows' )) { echo " Windows"; } elseif ( strpos( $_SERVER['HTTP_USER_AGENT'], 'Mac OS' )) { echo " Mac OS"; } else { echo "système d'exploitation non reconnu"; $detect_os = FALSE} //normalement tu as compris là //Maintenant, on rajoute une étape pour enregistrer tout ce qu'on ne connait pas. Ca permettra d'avoir une liste et de peut-être rajouter des navigateurs et des OS plus tard. if (!$detect_nav || !$detect_os ) //Si une des deux variables est fausse { $file = fopen("liste_erreur.txt", a); //on ouvre le fichier qui liste les erreurs fputs($file, "\n"); //On insère un retour à la ligne pour ne pas tout coller fputs($file, $_SERVER['HTTP_USER_AGENT']); //On écris toutes les infos sur l'OS et le navigateur du client fclose($file); //On ferme le fichier } ?>
Si tu veux une autre solution qui t'affiche les informations qu'il y a dans cette variable, dis le moi :)
Live free, learn free, help free, Happy Hacking!
Enjoy it!
ok il est bien ton code
si je comprend bien il y a 2 code différant
qui font la même chose
et encore merci
pour ajouter d'autre navigateur je fait comme ça :
si je comprend bien il y a 2 code différant
qui font la même chose
et encore merci
pour ajouter d'autre navigateur je fait comme ça :
elseif ( strpos( $_SERVER['HTTP_USER_AGENT'], 'nom_du_navigateur' ) ) { echo " Nom_du_navigateur"; }
J'ai dis une blague, pas une attaque... -_-'
Pourquoi je t'aiderai pour te le détruire...? Il est possible via certaines manipulations, de changer notre navigateur, ou notre OS. Donc je voulais t'envoyer un petit message humoristique comme ça, que tu aurais retrouvé dans ton fichier de sauvegarde.
Bref, amuse toi bien comme ça alors ;)
Pourquoi je t'aiderai pour te le détruire...? Il est possible via certaines manipulations, de changer notre navigateur, ou notre OS. Donc je voulais t'envoyer un petit message humoristique comme ça, que tu aurais retrouvé dans ton fichier de sauvegarde.
Bref, amuse toi bien comme ça alors ;)
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
pour t'informer les serveur de free me renvoient un ereur a la ligne 46
je te donne l'erreur complète :
edit : après plusieurs minute de recherche je ne trouve pas ou est l'erreur
qui est au environ de cette ligne:
je te donne l'erreur complète :
Parse error: syntax error, unexpected '}' in /mnt/102/sdb/f/5/villenagui/newques.php on line 46
edit : après plusieurs minute de recherche je ne trouve pas ou est l'erreur
qui est au environ de cette ligne:
else { echo "système d'exploitation non reconnu"; $detect_os = FALSE}
le voici :
<html> <head> <title>posez votre question </title> <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" /> <link rel="stylesheet" media="screen" type="text/css" title="disin" href="disin.css" /> </head> <body> <fieldset class="body"> <?php include "menu.html" ?> <fieldset> <center> <form action="forum.php"> <center> pseudo : <input type="text"><br> message :<br> <textarea> votre question ici </textarea><br> votre configuration : <?php $detect_nav = TRUE; //création d'une variable pour savoir si on a réussi à trouver le navigateur if ( strpos( $_SERVER['HTTP_USER_AGENT'], 'Firefox' ) ) { echo " Firefox"; } if ( strpos( $_SERVER['HTTP_USER_AGENT'], 'Firefox' ) ) { echo " Firefox"; } elseif ( strpos( $_SERVER['HTTP_USER_AGENT'], 'Opera' ) ) { echo " Opera"; } elseif ( strpos( $_SERVER['HTTP_USER_AGENT'], 'Safari' ) ) { echo "Safari"; } elseif ( strpos($_SERVER['HTTP_USER_AGENT'], 'MSIE' ) ) { echo "Internet Explorer"; } else { echo "navigateur non reconnu"; $detect_nav = FALSE; } //On a pas réussi a trouver le navigateur, on met la variable à 0. $detect_os = TRUE; //même combat pour l'OS if ( strpos( $_SERVER['HTTP_USER_AGENT'], 'Windows' )) { echo " Windows"; } elseif ( strpos( $_SERVER['HTTP_USER_AGENT'], 'Mac OS' )) { echo " Mac OS"; } else { echo "système d'exploitation non reconnu"; $detect_os = FALSE} //normalement tu as compris là //Maintenant, on rajoute une étape pour enregistrer tout ce qu'on ne connait pas. Ca permettra d'avoir une liste et de peut-être rajouter des navigateurs et des OS plus tard. if (!$detect_nav || !$detect_os ) //Si une des deux variables est fausse { $file = fopen("liste_erreur.txt", a); //on ouvre le fichier qui liste les erreurs fputs($file, "\n"); //On insère un retour à la ligne pour ne pas tout coller fputs($file, $_SERVER['HTTP_USER_AGENT']); //On écris toutes les infos sur l'OS et le navigateur du client fclose($file); //On ferme le fichier } ?> </center> </fieldset> </fieldset> </body> </html>
maintenant j'ai une question a te poser dans le fichier "liste_erreur.txt " il y a cette ligne car je suis aller sur mon site sous Linux et le script ma repondu "système d'exploitation non reconnu" j'ai regarder la ligne et il y avait d'ecrit :
Mozilla/5.0 (X11; U; Linux i686; fr; rv:1.9.2.3) Gecko/20100423 Ubuntu/10.04 (lucid) Firefox/3.6.3
dans mon code je suis sensé mettre quoi ?
une ligne de code qui ressemble a ca :
Mozilla/5.0 (X11; U; Linux i686; fr; rv:1.9.2.3) Gecko/20100423 Ubuntu/10.04 (lucid) Firefox/3.6.3
dans mon code je suis sensé mettre quoi ?
une ligne de code qui ressemble a ca :
if ( strpos( $_SERVER['HTTP_USER_AGENT'], 'Linux' )) { echo " Linux"; }
Voici. (copié-collé, emballé, pesé)
// Temporary Variables
// The useragent string (lowercase to simplify testing)
$_nw_ua = strtolower(@$_SERVER["HTTP_USER_AGENT"]);
// Browser Detection { ======================================================
// Version checking, each one of these will take a float value describing the
// version number, or - if the user is not using that browser - zero.
// Generic code-name "Mozilla" version
define("NW_MOZ_VERSION", preg_match('/mozilla\/(\d+\.\d+)/',
$_nw_ua, $_nw_v) ? (float)$_nw_v[1] : 0);
// KDE's Konqueror
define("NW_IS_KONQ", preg_match('/konqueror\/(\d+\.\d+)/',
$_nw_ua, $_nw_v) ? (float) $_nw_v[1] : 0);
// Opera software Opera
define("NW_IS_OPERA", preg_match('/opera[\s\/](\d+\.\d+)/',
$_nw_ua, $_nw_v) ? (float) $_nw_v[1] : 0);
// Microsoft Internet Explorer
define("NW_IS_IE", !NW_IS_OPERA && preg_match('/msie (\d+\.\d+)/',
$_nw_ua, $_nw_v) ? (float) $_nw_v[1] : 0);
// Gecko-based browsers, such as Mozilla, Netscape 6, DocZilla,
// K-Meleon, etc.
define("NW_IS_GECKO", preg_match('/gecko\/(\d+)/',
$_nw_ua, $_nw_v) ? (float) $_nw_v[1] : 0);
// Netscape Navigator (all versions, including Gecko-based browsers)
define("NW_IS_NN", NW_IS_GECKO ? (preg_match('/netscape6*\/(\d+.\d+)/', $_nw_ua, $_nw_v) ?
(float) $_nw_v[1] : 0) : ((!NW_IS_OPERA && !NW_IS_KONQ && !NW_IS_IE) ?
NW_MOZ_VERSION : 0));
// An old 3rd generation web browser
define("NW_IS_GEN3", NW_IS_NN < 4 || NW_IS_OPERA < 4 || NW_IS_IE < 4 || NW_MOZ_VERSION < 4);
// } Browser Detection ======================================================
// Generic Platform Detection { =============================================
define("NW_IS_LINUX", strstr($_nw_ua, "linux") !== false);
define("NW_IS_MAC", strstr($_nw_ua, "mac") !== false);
define("NW_IS_SOLARIS", (strstr($_nw_ua, "solaris") !== false) ||
(strstr($_nw_ua, "sunos") !== false));
define("NW_IS_X11", strstr($_nw_ua, "x11") !== false);
define("NW_IS_WINDOWS", strstr($_nw_ua, "win") !== false);
define("NW_IS_OS2", strstr($_nw_ua, "os2") !== false);
// } Generic Platform Detection =============================================
unset($_nw_ua, $_nw_v); // clean-up
// Temporary Variables
// The useragent string (lowercase to simplify testing)
$_nw_ua = strtolower(@$_SERVER["HTTP_USER_AGENT"]);
// Browser Detection { ======================================================
// Version checking, each one of these will take a float value describing the
// version number, or - if the user is not using that browser - zero.
// Generic code-name "Mozilla" version
define("NW_MOZ_VERSION", preg_match('/mozilla\/(\d+\.\d+)/',
$_nw_ua, $_nw_v) ? (float)$_nw_v[1] : 0);
// KDE's Konqueror
define("NW_IS_KONQ", preg_match('/konqueror\/(\d+\.\d+)/',
$_nw_ua, $_nw_v) ? (float) $_nw_v[1] : 0);
// Opera software Opera
define("NW_IS_OPERA", preg_match('/opera[\s\/](\d+\.\d+)/',
$_nw_ua, $_nw_v) ? (float) $_nw_v[1] : 0);
// Microsoft Internet Explorer
define("NW_IS_IE", !NW_IS_OPERA && preg_match('/msie (\d+\.\d+)/',
$_nw_ua, $_nw_v) ? (float) $_nw_v[1] : 0);
// Gecko-based browsers, such as Mozilla, Netscape 6, DocZilla,
// K-Meleon, etc.
define("NW_IS_GECKO", preg_match('/gecko\/(\d+)/',
$_nw_ua, $_nw_v) ? (float) $_nw_v[1] : 0);
// Netscape Navigator (all versions, including Gecko-based browsers)
define("NW_IS_NN", NW_IS_GECKO ? (preg_match('/netscape6*\/(\d+.\d+)/', $_nw_ua, $_nw_v) ?
(float) $_nw_v[1] : 0) : ((!NW_IS_OPERA && !NW_IS_KONQ && !NW_IS_IE) ?
NW_MOZ_VERSION : 0));
// An old 3rd generation web browser
define("NW_IS_GEN3", NW_IS_NN < 4 || NW_IS_OPERA < 4 || NW_IS_IE < 4 || NW_MOZ_VERSION < 4);
// } Browser Detection ======================================================
// Generic Platform Detection { =============================================
define("NW_IS_LINUX", strstr($_nw_ua, "linux") !== false);
define("NW_IS_MAC", strstr($_nw_ua, "mac") !== false);
define("NW_IS_SOLARIS", (strstr($_nw_ua, "solaris") !== false) ||
(strstr($_nw_ua, "sunos") !== false));
define("NW_IS_X11", strstr($_nw_ua, "x11") !== false);
define("NW_IS_WINDOWS", strstr($_nw_ua, "win") !== false);
define("NW_IS_OS2", strstr($_nw_ua, "os2") !== false);
// } Generic Platform Detection =============================================
unset($_nw_ua, $_nw_v); // clean-up