may 15, 2009

Enviado por en PHP, WWW

Identificador de User Agent y SO en PHP

Con esta entrada se intenta explicar como conseguir el User agent y el sistema operativo, de un visitante para así poder mostrar contenidos variables de acuerdo a reglas establecidas.

Este script podría ser parte fundamental uno de esos servicios de IP -teller y cosas asi.

Espero que con esto queden claro, super globals como  $_SERVER, y sus usos como HTTP_USER_AGENT :D

 <?php
function agente($explorador) {
$agente = $_SERVER['HTTP_USER_AGENT'];
return strstr($agente, $explorador);
}

function so($opersys) {
$oper = $_SERVER['HTTP_USER_AGENT'];
return strstr($oper, $opersys);
}

if(agente('Firefox') != FALSE) {
    $status .= "Estas usando <i>Firefox browser</i> <br />\n";

      if(so('Windows') != FALSE) {
    $status .= "Estas en <i>Windows</i> <br />\n";
    }
      elseif(so('Linux') != FALSE) {
    $status .= "Estas en <i>Linux</i> <br />\n";
    }
      elseif(so('MAC') != FALSE) {
    $status .= "Estas en <i>MAC OSX</i> <br />\n";
    }
      else {
    $status .= "Sistema operativo desconocido <br />\n";
    }

}

else if(agente('America Online Browser') != FALSE) {
    $status .= "Estas usando <i>AOL browser</i> <br />\n";
    $status .= "Estas en <i>Windows</i> <br />\n";
}
else if(agente('Iceweasel') != FALSE) {
    $status .= "Estas usando <i>Iceweasel</i> <br />\n";
    $status .= "Estas en <i>Linux</i> <br />\n";
}
else if(agente('Opera') != FALSE) {
    $status .= "Estas usando <i>Opera browser</i> <br />\n";

      if(so('Windows') != FALSE) {
    $status .= "Estas en <i>Windows</i> <br />\n";
    }
      elseif(so('Linux') != FALSE) {
    $status .= "Estas en <i>Linux</i> <br />\n";
    }
      elseif(so('MAC') != FALSE) {
    $status .= "Estas en <i>MAC OSX</i> <br />\n";
    }
      else {
    $status .= "Sistema operativo desconocido <br />\n";
    }

}

else if(agente('Safari') != FALSE) {
    $status .= "Estas usando <i>Safari browser</i> <br />\n";
    $status .= "Estas en <i>Linux</i> <br />\n";
}

else if(agente('MSIE') != FALSE) {
    $status .= "Estas usando <i>Internet Explorer</i> <br />\n";
    $status .= "Estas en <i>Windows</i> <br />\n";
}

else {
    $status .= "User Agent desconcido. <br />\n";

        if(so('Windows') != FALSE) {
    $status .= "Estas usando <i>Windows</i> <br />\n";
    }
      elseif(so('Linux') != FALSE) {
    $status .= "Estas usando <i>Linux</i> <br />\n";
    }
      elseif(so('MAC') != FALSE) {
    $status .= "Estas usando <i>MAC OSX</i> <br />\n";
    }
      else {
    $status .= "Sistema operativo desconocido<br />\n";
    }

}

print $status;

?>

Saludos

Aquí el ejemplo en acción

    Posts Relacionados

    Dejar una respuesta

    Debes ser Alojarse para enviar un comentario.