Foros del Web » Programando para Internet » PHP »

saber el navegador...

Estas en el tema de saber el navegador... en el foro de PHP en Foros del Web. Que tal, alguno de ustedes sabe de alguna funcion o alguna forma de saber que navegador espesifico esta usando nuestro visitante??? ya que la variable ...
  #1 (permalink)  
Antiguo 04/04/2005, 04:27
 
Fecha de Ingreso: marzo-2005
Mensajes: 9
Antigüedad: 12 años, 8 meses
Puntos: 0
saber el navegador...

Que tal, alguno de ustedes sabe de alguna funcion o alguna forma de saber que navegador espesifico esta usando nuestro visitante???

ya que la variable HTTP_USER_AGENT, saca un texto muy largo y yo solo quiero saber el navegador en espesifico: Firefox, IExplorer, Opera, Netscape, etc...

salu2
  #2 (permalink)  
Antiguo 04/04/2005, 04:50
Avatar de jam1138
/** @package Moderador */
 
Fecha de Ingreso: julio-2004
Ubicación: sèveR led onieR lE
Mensajes: 9.368
Antigüedad: 13 años, 4 meses
Puntos: 101
... Pués podrías hacer una función para solo sacar ese dato...
... ... ... ó ocupar algo ya hecho... (sacado de http://mx2.php.net/function.get-browser )
Código PHP:
<?php

// important to order by parent ie MSIE then OPERA.

$browser = array (
   
"MSIE",            // parent
   
"OPERA",
   
"MOZILLA",        // parent
   
"NETSCAPE",
   
"FIREFOX",
   
"SAFARI"
);

$info[browser] = "OTHER";

foreach (
$browser as $parent) {
   
$s strpos(strtoupper($_SERVER['HTTP_USER_AGENT']), $parent);
   
$f $s strlen($parent);
   
$version substr($_SERVER['HTTP_USER_AGENT'], $f5);
   
$version preg_replace('/[^0-9,.]/','',$version);
  
   if (
strpos(strtoupper($_SERVER['HTTP_USER_AGENT']), $parent)) {
   
$info[browser] = $parent;
   
$info[version] = $version;
   }
}

print_r($info);

?>
Como ves... solo tienes un arreglo con 2 índices: $info[browser] y $info[version] y olvidate de lo demás... puedes ver los demás códigos... y bueno... temo que no sé de otra función en PHP para obtener dichos datos... solo en JavaScript... Espero te sirva esto.

Suerte!
__________________
٩(͡๏̯͡๏)۶
» Cómo hacer preguntas de manera inteligente «

"100 años después, la revolución no es con armas, es intelectual y digital"
  #3 (permalink)  
Antiguo 06/04/2005, 00:31
 
Fecha de Ingreso: marzo-2005
Mensajes: 9
Antigüedad: 12 años, 8 meses
Puntos: 0
De acuerdo

Gracias, si que me a servido, solo con mozilla fallo, me dijo OTHER, pero ya modifique el script que me pasaste y quedo bien , ademas le anexe para que detecte al konqueror y epiphany, para los linuxeros y otros pequeños cambios...
pongo el codigo como lo modifique, por si alguien mas lo necesita:

Código PHP:
<?php
$navegador 
= array (
   
"MSIE",            // pariente
   
"OPERA",
   
"MOZILLA",        // pariente
   
"NETSCAPE",
   
"FIREFOX",
   
"SAFARI",
   
"KONQUEROR"
);

$info[navegador] = "Desconocido";
//Si Mozilla no es bien detectado, con esto se soluciona:
   
$s strpos(strtoupper($_SERVER['HTTP_USER_AGENT']), "GECKO/");
   if (
$s) {
     
$s strpos(strtoupper($_SERVER['HTTP_USER_AGENT']), "EPIPHANY");
     if (
$s){
       
$f $s 8;
       
$version substr($_SERVER['HTTP_USER_AGENT'], $f6);
       
$version preg_replace('/[^0-9,.]/','',$version);
       
$info[navegador] = "Epiphany";
    
$info[version] = $version;
  }
  else{
    
$s strpos(strtoupper($_SERVER['HTTP_USER_AGENT']), "RV");
    
$f $s 2;
       
$version substr($_SERVER['HTTP_USER_AGENT'], $f6);
       
$version preg_replace('/[^0-9,.]/','',$version);
       
$info[navegador] = "Mozilla";
    
$info[version] = $version;
  }
   }

foreach (
$navegador as $pariente) {
   
$s strpos(strtoupper($_SERVER['HTTP_USER_AGENT']), $pariente);
   
$f $s strlen($pariente);
   
$version substr($_SERVER['HTTP_USER_AGENT'], $f6);
   
$version preg_replace('/[^0-9,.]/','',$version);
   if (
$s) {
   
$info[navegador] = ucfirst(strtolower($pariente));
   
$info[version] = $version;
   }
}

print_r($info);  //se imprime el valor de los indices del arreglo
?>
salu2
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 06:38.