|
Publicité ' | |||||||||||||||||||||||
|
|
#1 |
|
Invité de passage
![]() |
Salut,
j'ai un site heberger chez free et en voulant utiliser la fonction get_browser(), mais elle est indisponible. Si quelqu'un avait un equivalent qui integre la detection des bot et tout et tout ca serai cool. Les script sur la page de doc php ne detecte que les navigateur les plus communs... merci d'avance |
|
|
00
|
|
|
#2 |
|
Nouveau Membre du Club
![]() Étudiant Inscription : juin 2004 Messages : 78 ![]() |
Salut, je peux te proposer $_SERVER[], pour récupérer diverses informations.
http://perso.univ-rennes1.fr/pascal.aubry/doc/php_variables/_server.php pour un petit récapitulatif Je ne sais pas si cela répond exactement a ton besoin (bot..) mais c'est une piste Bonne soirée, DD. |
|
|
00
|
|
|
#3 |
|
Membre émérite
![]() Inscription : février 2006 Messages : 840 ![]() |
Pour fonctionner cette fonction a besoin d'être pontée avec un fichier browscap.ini.
Le chemin de ce fichier doit impérativement être spécifié dans le php.ini de ton serveur. Vois si tu peux modifier temporairement cette directive avec ini_set() ?
__________________
Consultant idéaliste. |
|
|
00
|
|
|
#4 |
|
Membre émérite
![]() ![]() Inscription : novembre 2004 Messages : 735 ![]() |
Salut,
Dans la doc de la fonction get_browser(), on voit qu'il font référence à _SERVER["HTTP_USER_AGENT"] qui contient les infos dont tu as besoin. Ensuite pour rafiner tu peux très bien te refaire une petite fonction reexploitant un fichier browscap.ini de ton cru et ceci sans intervention de free ( très très simple via parse_ini_file() ) Mais c'est vraiment si tu veux un truc complet car sinon un petit parse du user agent peut être suffisant Cordialement Pierre |
|
|
00
|
|
|
#5 |
|
Invité de passage
![]() |
je comprend pas trop comment utiliser la variable $_SERVER["HTTP_USER_AGENT"]; avec la fonction parse_ini_file
|
|
|
00
|
|
|
#6 |
|
Membre émérite
![]() ![]() Inscription : novembre 2004 Messages : 735 ![]() |
Je pense que je n'ai pas assez explicité mon raisonement.
Tu commences par récuperer un fichier browscap.ini à jour à cette adresse : http://www.garykeith.com/browsers/downloads.asp Ensuite, tu mets ce fichier sur ton serveur et tu le parse avec parse_ini_file. Cela va te donner un tableau avec tous les user agents et tu n'as plus qu'à faire une recherche dan sle tableau avec ce que tu as dans $_SERVER['USER_AGENT'] J'espère avoir été assez clair En gros on reproduit le fonctionement de get_browser Pierre |
|
|
00
|
|
|
#7 | ||
|
Invité de passage
![]() |
Code :
$_SERVER["HTTP_USER_AGENT"] retourne ca, normal : ca : Array ( [browser] => Default Browser [version] => 7.0 [frames] => [iframes] => [tables] => 1 [cookies] => [backgroundsounds] => [vbscript] => [javascript] => [javaapplets] => [activexcontrols] => [cdf] => [aol] => [beta] => [win16] => [crawler] => [stripper] => [wap] => [netclr] => [parent] => IE 7.0 [css] => 0 [majorver] => 7 [minorver] => 0 [platform] => WinXP [javaappletsframes] => 1 [AK] => [SK] => [Win16] => ) mon code php est le suivant: Code :
[*] browser="Default Browser" css = 0 frames = False iframes = False tables = True cookies = False backgroundsounds = False vbscript = False javascript = False javaapplets = False activexcontrols = False cdf = False aol = False beta = False Win16 = False crawler = False stripper = False wap = False netclr = False |
||
|
|
00
|
|
|
#8 |
|
Membre émérite
![]() ![]() Inscription : novembre 2004 Messages : 735 ![]() |
il ne faut pas oublier de rajouter le deuxième paramètre de parse_ini_file à TRUE pour garder les sections comme explicité dans la doc
|
|
|
00
|
|
|
#9 |
|
Invité de passage
![]() |
comment je fais pour passer de:
Mozilla/5.0 (X11; U; Linux i686; en-US; rv:1.8.0.1) Gecko/20060124 Firefox/1.5.0.1 a la section du fichier .ini correspondate. J'ai jamais utiliser de fichier ini avant, je capte pas comment faire la correspondance. merci de m'aider |
|
|
00
|
|
|
#10 |
|
Invité de passage
![]() |
Re-bonjour,
si quelqu'un pouvait expliciter comment utiliser conjointement parse_file_ini et $_SERVER["HTTP_USER_AGENT"]. Je n'ai jamais utiliser de fichier ini, je ne comprend pas les expliquer précédente (je ne vois pas du tout l'algo a mettre en place) merci |
|
|
00
|
|
|
#11 | ||
|
Membre émérite
![]() ![]() Inscription : novembre 2004 Messages : 735 ![]() |
Avec un truc comme ca cela doit marcher mais je viens de voir qu'il peut y avoir des caractères spéciaux dans les clés des sections du fichier ini ( j'aurais du y penser car sinon cela ferait de possibilités.)
Pour un début de code, on peut avoir un truc comme ca. Code :
Il faut étudier un peu le fichier ini, et les différents user agent pour déterminer un genre de masque à appliquer. mais là, on en revient à refaire completement la fonction get_browser ce qui est dommage car ce sera beaucoup moins performant pierre |
||
|
|
00
|
|
|
#12 | ||
|
Invité de passage
![]() |
ok, merci pour la syntae. Pour l'histoire du masque, c'est bien ce qu'il me sembler, je penser qui yavait une methode moins bourrine que le masque.
Par masque tu entends bien utiliser des regexp ? je fais comme suis pour recuperer le browser et l'os: Code :
|
||
|
|
00
|
Copyright © 2000-2012 - www.developpez.com