may 15, 2009
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
Posts Relacionados
- Reto PhP – Puede Pasarle a cualquier Programador El Problema Para este reto se usaron la herramienta de...


