Bonjour

Toujours de Julp une autre q/r qui permet d'identifier le navigateur du visiteur:
En php
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;
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
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;
}
Il me manque quelques informations à savoir, comment représenter les expressions suivantes:
Code : Sélectionner tout - Visualiser dans une fenêtre à part
AND (!ereg("MSIE", getenv("HTTP_USER_AGENT")))
comme ceci:
Code : Sélectionner tout - Visualiser dans une fenêtre à part
and ($ENV{'HTTP_USER_AGENT'} !~ m/MSIE/)
?
Code : Sélectionner tout - Visualiser dans une fenêtre à part
(eregi("Spider", getenv("HTTP_USER_AGENT")))
eregi, je pense que l'expression régulière change, qu'en pensez-vous ?

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