Foros del Web » Programando para Internet » PHP »

quiero limitar los navegadors por problemas de contabilidad

Estas en el tema de quiero limitar los navegadors por problemas de contabilidad en el foro de PHP en Foros del Web. quiero hacer lo mismo con opera 10.00 y safari4 chrome3 pero con uno ya no me sale Código PHP: <?php  echo  $_SERVER [ 'HTTP_USER_AGENT' ] .  ...
  #1 (permalink)  
Antiguo 13/01/2010, 02:50
 
Fecha de Ingreso: febrero-2009
Mensajes: 443
Antigüedad: 13 años, 7 meses
Puntos: 1
quiero limitar los navegadors por problemas de contabilidad

quiero hacer lo mismo con opera 10.00 y safari4 chrome3
pero con uno ya no me sale

Código PHP:
<?php 
echo $_SERVER['HTTP_USER_AGENT'] . "\n\n";

$browser get_browser(nulltrue);
print_r($browser);


 if (  ![
browser] => Firefox  and    ![version] => 3.5 ){
echo 
"Necessitas utilizar firefox 3.5";
<
p><strong><a href="http://www.mozilla.com/en-US/firefox/all.html">Descargar</a></strong></p>
 }
?>
  #2 (permalink)  
Antiguo 13/01/2010, 06:00
Avatar de Carxl
Colaborador
 
Fecha de Ingreso: agosto-2006
Ubicación: Bogotá
Mensajes: 2.993
Antigüedad: 16 años, 1 mes
Puntos: 70
Respuesta: quiero limitar los navegadors por problemas de contabilidad

Qué no te sale?
__________________
Hay 10 tipos de personas, los que entienden binario y los que no. (Anónimo)
www.programandoweb.com
  #3 (permalink)  
Antiguo 13/01/2010, 06:42
 
Fecha de Ingreso: febrero-2009
Mensajes: 443
Antigüedad: 13 años, 7 meses
Puntos: 1
Respuesta: quiero limitar los navegadors por problemas de contabilidad

el if debe tener un error de sintaii poque me pone la pagina en blanco

si entrara conopera tendria que salir el mensaje

Código PHP:
echo $_SERVER['HTTP_USER_AGENT'] . "\n\n";
$browser get_browser(nulltrue);
print_r($browser); 
Código PHP:
 if (  ![browser] => Firefox  and    ![version] => 3.5 ){
echo 
"Necessitas utilizar firefox 3.5";
<
p><strong><a href="http://www.mozilla.com/en-US/firefox/all.html">Descargar</a></strong></p>
 } 
  #4 (permalink)  
Antiguo 13/01/2010, 06:45
Colaborador
 
Fecha de Ingreso: octubre-2009
Ubicación: Tokyo - Japan !
Mensajes: 3.867
Antigüedad: 12 años, 11 meses
Puntos: 334
Respuesta: quiero limitar los navegadors por problemas de contabilidad

if ($browser['browser'] != 'Firefox' && $browser['version'] != '3.5'){

prueba asi!
__________________
More about me...
~ @rhyudek1
~ Github
  #5 (permalink)  
Antiguo 13/01/2010, 07:34
 
Fecha de Ingreso: febrero-2009
Mensajes: 443
Antigüedad: 13 años, 7 meses
Puntos: 1
Respuesta: quiero limitar los navegadors por problemas de contabilidad

estoy utilizando firefox 3.5.6 me sigue saliendo el mensaje

if ($browser['browser_name_pattern'] !='Firefox/3.5.*' ){
echo "Necessitas utilizar firefox 3.5";
}
  #6 (permalink)  
Antiguo 13/01/2010, 07:35
Colaborador
 
Fecha de Ingreso: octubre-2009
Ubicación: Tokyo - Japan !
Mensajes: 3.867
Antigüedad: 12 años, 11 meses
Puntos: 334
Respuesta: quiero limitar los navegadors por problemas de contabilidad

podrias pegar aca el resultado de print_r($browser); para saber los valores del array?
__________________
More about me...
~ @rhyudek1
~ Github
  #7 (permalink)  
Antiguo 13/01/2010, 08:37
 
Fecha de Ingreso: febrero-2009
Mensajes: 443
Antigüedad: 13 años, 7 meses
Puntos: 1
Respuesta: quiero limitar los navegadors por problemas de contabilidad

Mozilla/5.0 (X11; U; Linux x86_64; es-ES; rv:1.9.1.6) Gecko/20100107 Fedora/3.5.6-1.fc12 Firefox/3.5.6 FirePHP/0.3 Necessitas utilizar firefox 3.5.6

no creo que el problema se porque utilizo linux
porque estoy validando por Firefox/3.5.*
  #8 (permalink)  
Antiguo 13/01/2010, 08:52
Avatar de GatorV
$this->role('moderador');
 
Fecha de Ingreso: mayo-2006
Ubicación: /home/ams/
Mensajes: 38.567
Antigüedad: 16 años, 4 meses
Puntos: 2135
Respuesta: quiero limitar los navegadors por problemas de contabilidad

Pues el problema es claro, para PHP el * no es un comodín, por lo que no es true esto: "Firefox/3.5.*" == "Firefox/3.5.6". Necesitas usar una expresión regular para hacer el match en ese caso.

Saludos.
  #9 (permalink)  
Antiguo 13/01/2010, 09:07
 
Fecha de Ingreso: febrero-2009
Mensajes: 443
Antigüedad: 13 años, 7 meses
Puntos: 1
Respuesta: quiero limitar los navegadors por problemas de contabilidad

pero así también me sale el mensaje

Código PHP:
if ($browser['browser_name_pattern'] !='Firefox/3.5.6' ){
echo 
"necesitas utilizar firefox 3.5.6";

mire la documentación de php y pense que también podia ir con *
Código PHP:
 [browser_name_pattern] => Mozilla/5.0 (Windows; ?; Windows NT 5.1; *rv:*) Gecko/* Firefox/0.9* 
http://es.php.net/manual/en/function.get-browser.php
  #10 (permalink)  
Antiguo 13/01/2010, 09:09
Avatar de GatorV
$this->role('moderador');
 
Fecha de Ingreso: mayo-2006
Ubicación: /home/ams/
Mensajes: 38.567
Antigüedad: 16 años, 4 meses
Puntos: 2135
Respuesta: quiero limitar los navegadors por problemas de contabilidad

No, para PHP una cadena es igual solo si la otra cadena es exactamente igual. Necesitas usar expresiones regulares para poder hacer el match, en este caso debes de usar preg_match.

Saludos.
  #11 (permalink)  
Antiguo 13/01/2010, 09:17
 
Fecha de Ingreso: febrero-2009
Mensajes: 443
Antigüedad: 13 años, 7 meses
Puntos: 1
gracias voy
a probarlo

tengo algún error de sintaxis

if (preg_match('/[^Firefox/3.5.* ])/' ,$browser["browser_name_pattern"] ){
echo "Necesitas utilizar firefox 3.5.6";
}

Última edición por GatorV; 13/01/2010 a las 14:50
  #12 (permalink)  
Antiguo 13/01/2010, 10:26
Avatar de julianmejio  
Fecha de Ingreso: agosto-2005
Ubicación: Medellín, Antioquia
Mensajes: 88
Antigüedad: 17 años, 1 mes
Puntos: 3
Respuesta: quiero limitar los navegadors por problemas de contabilidad

Qué pena no entenderte. ¿Quieres que sólo se vea en Firefox?
  #13 (permalink)  
Antiguo 13/01/2010, 10:45
 
Fecha de Ingreso: febrero-2009
Mensajes: 443
Antigüedad: 13 años, 7 meses
Puntos: 1
Respuesta: quiero limitar los navegadors por problemas de contabilidad

también opera 10 y safari 4 y chrome 3 porque las versiones anteriores no soportan css que utilizan en un pagina web
  #14 (permalink)  
Antiguo 13/01/2010, 10:48
Colaborador
 
Fecha de Ingreso: octubre-2009
Ubicación: Tokyo - Japan !
Mensajes: 3.867
Antigüedad: 12 años, 11 meses
Puntos: 334
Respuesta: quiero limitar los navegadors por problemas de contabilidad

ufff.. mi humilde opinión es
quien haya hecho esa web la haga denuevo o la arregle, un webmaster se preocupa de que el código sea valido con los estándares para evitar problemas como el que tienes tu ahora...
__________________
More about me...
~ @rhyudek1
~ Github
  #15 (permalink)  
Antiguo 13/01/2010, 11:31
Avatar de julianmejio  
Fecha de Ingreso: agosto-2005
Ubicación: Medellín, Antioquia
Mensajes: 88
Antigüedad: 17 años, 1 mes
Puntos: 3
Respuesta: quiero limitar los navegadors por problemas de contabilidad

Hola. Aquí te doy un script que acabo de crear para hacer lo que estás pensando; sin embargo te aconsejo que por accesibilidad y semántica web, cambies ese código (y estilos CSS) que es incompatible en otros navegadores (no aplica para IE 6.0)

NOTA: Sólo lo he probado con MSIE y Firefox. Doy por entendido que funcionará igualmente con Safari, Opera y los que quieras. Recuerda que el complemento es de la forma 'Navegador/Version' o 'Navegador Version'. Para obtener el complemento de navegador de Safari u Opera debes ver la cadena user-agent de cada navegador. Yo no los puse porque no los tengo instalados, y no los puedo ver. Espero que te sirva.

Código PHP:
/*
 * $uaAdmitidos: array ->
 * Complemento: nombre del complemento del navegador, ya sea un navegador en sí (MSIE, Firefox, Opera, etc)
 * Versión: versión base del complemento
 * Coindicencia:
 *    'E': Coincidencia exacta de la versión del complemento.
 *  'M': La versión debe ser igual o mayor a la especificada.
 *  'm': La versión debe ser igual o menor a la especificada.
 * Debes especificar los navegadores compatibles en este formato dentro de este arreglo.
 */
$uaAdmitidos = array
(
    array(
'Complemento' => 'Firefox''Version' => '3.5.6''Coincidencia' => 'M')
);
// Contiene el estado de compatiblidad del navegador.
$navegadorCompatible false;
// Inicialización de la variable que contendrá los complementos compatibles (devueltos por la cadena user-agent del navegador)
$complementosNavegador null;
// Recuperación de los complementos y sus respectivas versiones.
preg_match_all('|([\w]+)[\s\/]([\d.]+)|'$_SERVER['HTTP_USER_AGENT'],  $complementosNavegador);
// Visualización (sólo para depurar)
//var_dump($complementosNavegador);
// Comprobación de complementos
for($i 0$i count($complementosNavegador[1]); $i++)
{
    
// Salir del ciclo si el navegador ya es compatible.
    
if($navegadorCompatible)
        break;
    
// Por cada complemento recuperado de la cadena user-agent del navegador
    
foreach($uaAdmitidos as $uaAdmitido)
        if(
$uaAdmitido['Complemento'] == $complementosNavegador[1][$i]) // Si concuerda con alguno especificado
            
switch($uaAdmitido['Coincidencia']) // Verificar la versión
            
{
                case 
'E'// Para coincidencia exacta
                    
if($complementosNavegador[2][$i] == $uaAdmitido['Version'])
                        
$navegadorCompatible true;
                    break;
                case 
'M'// Para coincidencia igual o mayor
                    
if($complementosNavegador[2][$i] >= $uaAdmitido['Version'])
                        
$navegadorCompatible true;
                    break;
                case 
'm'// Para coincidencia igual o menor
                    
if($complementosNavegador[2][$i] <= $uaAdmitido['Version'])
                        
$navegadorCompatible true;
                    break;
            }
}
if(!
$navegadorCompatible// Acciones tomadas respecto a la compatiblidad.
{
    echo 
"Debes utilizar un navegador compatible";
    exit;


Última edición por julianmejio; 13/01/2010 a las 11:34 Razón: Aclarar estado de código.
  #16 (permalink)  
Antiguo 13/01/2010, 11:35
 
Fecha de Ingreso: febrero-2009
Mensajes: 443
Antigüedad: 13 años, 7 meses
Puntos: 1
Respuesta: quiero limitar los navegadors por problemas de contabilidad

utilizo border-radius css3
firefox 3.1,safari 4,opera 10.50 beta,chrome 3 lo soporta pero si entra alguien con la versión 2 de firefox la vera deformada


el problema es que muchos usuario utilizan internet explorer 5 y no saben que hay otras alternativas

cada versión trae nuevas características y soluciona fallos de seguridad ademas cargas las paginas mas rápido porque lleva un nuevo motor gecko
  #17 (permalink)  
Antiguo 13/01/2010, 11:43
Avatar de julianmejio  
Fecha de Ingreso: agosto-2005
Ubicación: Medellín, Antioquia
Mensajes: 88
Antigüedad: 17 años, 1 mes
Puntos: 3
Respuesta: quiero limitar los navegadors por problemas de contabilidad

El border-radius se puede solucionar de muchas formas con CSS, ya sea 2 o 3, pero es muy engorroso. Sin embargo espero que te sirva el código para lo que haces. Personalmente no acostumbro a visitar sitios tan "cerrados", pero si es por necesidad, y permites por lo menos Firefox, está, en cierto modo, bien.
  #18 (permalink)  
Antiguo 13/01/2010, 11:58
 
Fecha de Ingreso: febrero-2009
Mensajes: 443
Antigüedad: 13 años, 7 meses
Puntos: 1
Respuesta: quiero limitar los navegadors por problemas de contabilidad

yo quiero dar soporta 4 de los 5 navegadores mas utilizados
firefox,opera,chrome,safari

internet explorer en la version 9 lo va a soportar
  #19 (permalink)  
Antiguo 13/01/2010, 12:04
Avatar de maturano  
Fecha de Ingreso: enero-2010
Ubicación: /home/
Mensajes: 537
Antigüedad: 12 años, 8 meses
Puntos: 36
Respuesta: quiero limitar los navegadors por problemas de contabilidad

¿pero qué nadie lo va a preguntar?; ¿no solo puedes pedirselo amablemente a los de contabilidad?

[/ironic]

Etiquetas: contabilidad, limitar
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 21:45.