Foros del Web » Programando para Internet » PHP »

problemas idiomas

Estas en el tema de problemas idiomas en el foro de PHP en Foros del Web. Buenas gente tengo un problema con un detector de idioma. Bueno no es un problema es un warning, porque en mi servidor hay los warnings ...
  #1 (permalink)  
Antiguo 12/05/2008, 04:46
 
Fecha de Ingreso: enero-2008
Mensajes: 63
Antigüedad: 16 años, 3 meses
Puntos: 0
problemas idiomas

Buenas gente tengo un problema con un detector de idioma.

Bueno no es un problema es un warning, porque en mi servidor hay los warnings activados y no se como solucionarlo, en principio es comprobando las variables con isset, pero hay dos que no consigo solucionarlos os marco en negrita el lugar donde me salen los warnings.

Gracias


Saludos

Código PHP:
    if(!empty($_GET['IdIdioma'])){
        switch (
$_GET['IdIdioma']) {
            case 
"en":
                
$strIdIdioma "en";
                break;
            case 
"fr":
                
$strIdIdioma "fr";
                break;
            default:
                
$strIdIdioma "es";   
            }
        
$_SESSION['IdIdioma'] = $strIdIdioma;
        }
    else{
        switch (isset(
$_SESSION['IdIdioma'])) {
            case 
"en":
                
$strIdIdioma "en";
                break;
            case 
"fr":
                
$strIdIdioma "fr";
                break;
            default:
                
$strIdIdioma "es";   
            }
        
$_SESSION['IdIdioma'] = $strIdIdioma;
        }

    switch (
$strIdIdioma) {
        case 
"en":
            require_once(
"en-EN.php");
            break;
        case 
"fr":
            require_once(
"fr-FR.php");
            break;
        default:
            require_once(
"es-ES.php");
        }
    
    if(!empty(
$_SERVER['QUERY_STRING'])){
        
        
$strQueryString preg_replace ("/&?IdIdioma=(es|en|fr)/"""$_SERVER['QUERY_STRING']);

        if(!empty(
$strQueryString)){
            
$strQueryString preg_replace ("/&Id/""&Id"$strQueryString);
            
$strUrlIdioma $_SERVER['SCRIPT_NAME'] ."?"$strQueryString ."&IdIdioma";
            }
        <
B>else $strUrlIdioma .= $_SERVER['SCRIPT_NAME'] ."?IdIdioma";</B>            
        }
        <
B>else $strUrlIdioma .= $_SERVER['SCRIPT_NAME'] ."?IdIdioma";</B
Bueno veo que la negrita no funciona en php.

else $strUrlIdioma .= $_SERVER['SCRIPT_NAME'] ."?IdIdioma";
else $strUrlIdioma .= $_SERVER['SCRIPT_NAME'] ."?IdIdioma";
  #2 (permalink)  
Antiguo 12/05/2008, 04:55
 
Fecha de Ingreso: octubre-2004
Mensajes: 2.627
Antigüedad: 19 años, 6 meses
Puntos: 48
Re: problemas idiomas

El .= equivale a
Código PHP:
else $strUrlIdioma $strUrlIdioma $_SERVER['SCRIPT_NAME'] ."?IdIdioma"
Como $strUrlIdioma no existe, no puede leer su valor para concatenarlo.

Si $strUrlIdioma nunca va a estar creado antes de ese punto, o solo quiere que tenga ese valor, no concatenar, cambia el .= por = como tienes en la linea anterior.
  #3 (permalink)  
Antiguo 12/05/2008, 06:32
 
Fecha de Ingreso: enero-2008
Mensajes: 63
Antigüedad: 16 años, 3 meses
Puntos: 0
Re: problemas idiomas

Cita:
Iniciado por DarkJ Ver Mensaje
El .= equivale a
Código PHP:
else $strUrlIdioma $strUrlIdioma $_SERVER['SCRIPT_NAME'] ."?IdIdioma"
Como $strUrlIdioma no existe, no puede leer su valor para concatenarlo.

Si $strUrlIdioma nunca va a estar creado antes de ese punto, o solo quiere que tenga ese valor, no concatenar, cambia el .= por = como tienes en la linea anterior.
Gracias pero el warning todavía no he podido sacarmelo de encima, como el $strUrlIdioma no esta declarado me saca el warning
  #4 (permalink)  
Antiguo 12/05/2008, 09:06
Avatar de pateketrueke
Modernizr
 
Fecha de Ingreso: abril-2008
Ubicación: Mexihco-Tenochtitlan
Mensajes: 26.399
Antigüedad: 16 años
Puntos: 2534
Re: problemas idiomas

pues declara la $variable ... antes de tus comparaciones
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 02:49.