Bonjour
Toujours de Julp une autre q/r qui permet d'identifier le navigateur du visiteur:
En php
En perl enfin j'essaye
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29 if ((ereg("Nav", getenv("HTTP_USER_AGENT"))) || (ereg("Gold", getenv("HTTP_USER_AGENT"))) || (ereg("X11", getenv("HTTP_USER_AGENT"))) || (ereg("Mozilla", getenv("HTTP_USER_AGENT"))) || (ereg("Netscape", getenv("HTTP_USER_AGENT"))) AND (!ereg("MSIE", getenv("HTTP_USER_AGENT"))) AND (!ereg("Konqueror", getenv("HTTP_USER_AGENT"))) AND (!ereg("Firefox", getenv("HTTP_USER_AGENT"))) AND (!ereg("Safari", getenv("HTTP_USER_AGENT")))) $browser = "Netscape"; elseif (ereg("Opera", getenv("HTTP_USER_AGENT"))) $browser = "Opera"; elseif (ereg("MSIE", getenv("HTTP_USER_AGENT"))) $browser = "MSIE"; elseif (ereg("Lynx", getenv("HTTP_USER_AGENT"))) $browser = "Lynx"; elseif (ereg("WebTV", getenv("HTTP_USER_AGENT"))) $browser = "WebTV"; elseif (ereg("Konqueror", getenv("HTTP_USER_AGENT"))) $browser = "Konqueror"; elseif (ereg("Safari", getenv("HTTP_USER_AGENT"))) $browser = "Safari"; elseif (ereg("Firefox", getenv("HTTP_USER_AGENT"))) $browser = "Firefox"; elseif ((eregi("bot", getenv("HTTP_USER_AGENT"))) || (ereg("Google", getenv("HTTP_USER_AGENT"))) || (ereg("Slurp", getenv("HTTP_USER_AGENT"))) || (ereg("Scooter", getenv("HTTP_USER_AGENT"))) || (eregi("Spider", getenv("HTTP_USER_AGENT"))) || (eregi("Infoseek", getenv("HTTP_USER_AGENT")))) $browser = "Bot"; else $browser = "Other"; return $browser;
Il me manque quelques informations à savoir, comment représenter les expressions suivantes:
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58 sub browser { our $browser=""; if (($ENV{'HTTP_USER_AGENT'} =~ m/Nav/) or ($ENV{'HTTP_USER_AGENT'} =~ m/Gold/) or ($ENV{'HTTP_USER_AGENT'} =~ m/X11/) or ($ENV{'HTTP_USER_AGENT'} =~ m/Mozilla/) or ($ENV{'HTTP_USER_AGENT'} =~ m/Netscape/) and ($ENV{'HTTP_USER_AGENT'} !~ m/MSIE/) and ($ENV{'HTTP_USER_AGENT'} !~ m/Konqueror/) and ($ENV{'HTTP_USER_AGENT'} !~ m/Firefox/) and ($ENV{'HTTP_USER_AGENT'} !~ m/Safari/)) { $browser="Netscape"; } elsif ($ENV{'HTTP_USER_AGENT'} =~ m/Opera/) { $browser="Opera"; } elsif ($ENV{'HTTP_USER_AGENT'} =~ m/MSIE/) { $browser="MSIE"; } elsif ($ENV{'HTTP_USER_AGENT'} =~ m/Lynx/) { $browser="Lynx"; } elsif ($ENV{'HTTP_USER_AGENT'} =~ m/WebTV/) { $browser="WebTV"; } elsif ($ENV{'HTTP_USER_AGENT'} =~ m/Konqueror/) { $browser="Konqueror"; } elsif ($ENV{'HTTP_USER_AGENT'} =~ m/Safari/) { $browser="Safari"; } elsif ($ENV{'HTTP_USER_AGENT'} =~ m/Firefox/) { $browser="Firefox"; } elsif (($ENV{'HTTP_USER_AGENT'} =~ m/bot/) or ($ENV{'HTTP_USER_AGENT'} =~ m/Google/) or ($ENV{'HTTP_USER_AGENT'} =~ m/Slurp/) or ($ENV{'HTTP_USER_AGENT'} =~ m/Scooter/) or ($ENV{'HTTP_USER_AGENT'} =~ m/Spider/) or ($ENV{'HTTP_USER_AGENT'} =~ m/Infoseek/)) { $browser="Bot"; } else { $browser="Other"; } return $browser; }
comme ceci:
Code : Sélectionner tout - Visualiser dans une fenêtre à part AND (!ereg("MSIE", getenv("HTTP_USER_AGENT")))
?
Code : Sélectionner tout - Visualiser dans une fenêtre à part and ($ENV{'HTTP_USER_AGENT'} !~ m/MSIE/)
eregi, je pense que l'expression régulière change, qu'en pensez-vous ?
Code : Sélectionner tout - Visualiser dans une fenêtre à part (eregi("Spider", getenv("HTTP_USER_AGENT")))
J'ai testé le script car il ne présentait pas d'erreur, mais le résultat n'est pas bon, avec Firefox, il indique Netscape idem avec Internet Explorer
Merki
Partager