Operačný systém a prehliadač

Pomocou funkcie $_SERVER[HTTP_USER_AGENT] zistíme potrebné dáta o užívateľovi. Výpis môže vyzerať nasledovne: opera/9.26 (windows nt 5.1; u; en), prípadne mozilla/4.0 (compatible; msie 6.0; windows nt 5.1; sv1)MSIEWin XP. Takýto výpis nie je veľmi prehľadný a preto porovnávame funkciou eregi niektoré reťazce nasledovne:
<?
$data = strtolower($_SERVER[HTTP_USER_AGENT]);
$prehliadace = Array("MSIE", "Netscape", "Firefox",
 "Maxthon", "Opera", "Mozilla", "Neznámy");
if(eregi("gecko", $data)) {
                if(eregi("netscape", $data)) {
                        $prehliadac = "1";
                } elseif(eregi("firefox", $data)) {
                        $prehliadac = "2";
                } else {
                        $prehliadac = "5";
                }
        } elseif(eregi("maxthon", $data)) {
                $prehliadac = "3";
        } elseif(eregi("pera", $data)) {
                $prehliadac = "4";
        } elseif(eregi("msie", $data)) {
                $prehliadac = "0";
        } else {
                $prehliadac = "6";
        }


        $system = Array("Win XP", "Win 98", "Win 2000",
         "Windows", "Linux", "Mac OS", "Neznámy");

        if((eregi("windows 98", $data)) || (eregi("windows 4.10", $data)) || (eregi("win98", $data)))        {
                $os = "1";
        } elseif((eregi("windows 2000", $data)) || (eregi("windows NT 5.0", $data))) {
                $os = "2";
        } elseif((eregi("windows xp", $data)) || (eregi("windows NT 5.1", $data))) {
                $os = "0";
        } elseif(eregi("windows", $data)) {
                $os = "3";
        } elseif(eregi("linux", $data)) {
                $os = "4";
        } elseif(eregi("mac", $data)) {
                $os = "5";
        } else {
                $os = "6";
        }

$browser=$prehliadace[$prehliadac];
$system=$system[$os];
?>
$browser a $system sú upravené výstupy funkcie $_SERVER[HTTP_USER_AGENT], ktoré vypíšu už len daný operačný systém, prípadne prehliadač.

Pridať komentár k článku