Foros del Web » Programando para Internet » PHP »

Web multi-idioma con php y xml

Estas en el tema de Web multi-idioma con php y xml en el foro de PHP en Foros del Web. Buenas, estoy intenando hacer una web multi-idioma con xml y php. He estado mriando informacion sobre la funcion simplexml_load_file, pero no me entero de nada.... ...
  #1 (permalink)  
Antiguo 29/03/2010, 14:58
Avatar de zornak  
Fecha de Ingreso: septiembre-2008
Ubicación: Toledo
Mensajes: 96
Antigüedad: 15 años, 7 meses
Puntos: 3
Web multi-idioma con php y xml

Buenas, estoy intenando hacer una web multi-idioma con xml y php.

He estado mriando informacion sobre la funcion simplexml_load_file, pero no me entero de nada....

Si alguien me puede hechar una mano... lo agradeceria...
  #2 (permalink)  
Antiguo 29/03/2010, 14:59
Avatar de abimaelrc
Colaborador
 
Fecha de Ingreso: mayo-2009
Ubicación: En el planeta de Puerto Rico
Mensajes: 14.734
Antigüedad: 15 años
Puntos: 1517
Respuesta: Web multi-idioma con php y xml

Parece que no buscaste en la parte de aportes, mira esto http://www.forosdelweb.com/f18/aport...ml-dom-792348/
__________________
Verifica antes de preguntar.
Los verdaderos amigos se hieren con la verdad, para no perderlos con la mentira. - Eugenio Maria de Hostos
  #3 (permalink)  
Antiguo 29/03/2010, 15:58
Avatar de zornak  
Fecha de Ingreso: septiembre-2008
Ubicación: Toledo
Mensajes: 96
Antigüedad: 15 años, 7 meses
Puntos: 3
Respuesta: Web multi-idioma con php y xml

Wow gracias, solo habia mirado en XML y varios post de como traducia la gente con php =/

Ahora mismo le hecho un ojo, gracias :D luego os comento :P
  #4 (permalink)  
Antiguo 30/03/2010, 05:03
Avatar de zornak  
Fecha de Ingreso: septiembre-2008
Ubicación: Toledo
Mensajes: 96
Antigüedad: 15 años, 7 meses
Puntos: 3
Respuesta: Web multi-idioma con php y xml

Ok, lo he conseguido :P

Pero ahora tengo otro problema, tengo:

-Archivo XML -> <?xml version="1.0" encoding="ISO-8859-1"?>
-Index.php -> <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1" />

Y me muestra los acentos y las eñes con simbolos raros...

¿A que se puede deber?

EDITO: Solo me salen los simbolos si uso palabras y frases extraidas del xml, si pongo "ñ", se ve bien, en cambio si la "ñ" viene del xml, se ve mal.

Última edición por zornak; 30/03/2010 a las 05:06 Razón: Añadir informacion
  #5 (permalink)  
Antiguo 30/03/2010, 10:32
Avatar de abimaelrc
Colaborador
 
Fecha de Ingreso: mayo-2009
Ubicación: En el planeta de Puerto Rico
Mensajes: 14.734
Antigüedad: 15 años
Puntos: 1517
Respuesta: Web multi-idioma con php y xml

¿En los archivos están con esos simbolos raros, o es que al pasar del archivo al php te salen raros?
__________________
Verifica antes de preguntar.
Los verdaderos amigos se hieren con la verdad, para no perderlos con la mentira. - Eugenio Maria de Hostos
  #6 (permalink)  
Antiguo 30/03/2010, 11:14
Avatar de zornak  
Fecha de Ingreso: septiembre-2008
Ubicación: Toledo
Mensajes: 96
Antigüedad: 15 años, 7 meses
Puntos: 3
Respuesta: Web multi-idioma con php y xml

Aha, en ningun archivo salen, solo cuando lo veo en el explorador :S
  #7 (permalink)  
Antiguo 30/03/2010, 11:15
Avatar de abimaelrc
Colaborador
 
Fecha de Ingreso: mayo-2009
Ubicación: En el planeta de Puerto Rico
Mensajes: 14.734
Antigüedad: 15 años
Puntos: 1517
Respuesta: Web multi-idioma con php y xml

¿Que código usaste para mostrar la información en el navegador? Escribe lo que haz hecho.
__________________
Verifica antes de preguntar.
Los verdaderos amigos se hieren con la verdad, para no perderlos con la mentira. - Eugenio Maria de Hostos
  #8 (permalink)  
Antiguo 30/03/2010, 12:26
Avatar de zornak  
Fecha de Ingreso: septiembre-2008
Ubicación: Toledo
Mensajes: 96
Antigüedad: 15 años, 7 meses
Puntos: 3
Respuesta: Web multi-idioma con php y xml

Código PHP:
class cpanel
{

    public 
$lang=array();

    function 
__construct()
    {
        
$this->lang_init();     
    }
    
    private function 
lang_init()
    {
           if (!
function_exists('simplexml_load_file'))
           {
               exit(
"La funcion <b>simplexml_load_file</b> no ha sido encontrada, activa las librerias de simplexml.");
           }
           
        if (isset(
$_SESSION['lang'])) {
            
$path =   "langs/".$_SESSION['lang']."_lang.xml";
        } else 
$path =   "langs/en_lang.xml";
          
          if (
file_exists($path)) {
             
             
$xml=simplexml_load_file($path);
             
             foreach (
$xml as $key => $value) {
                
$this->lang[$key]=(string)$value[0];
                }
                          
        } else {
            exit(
"¡No se ha encontrado el archivo $path!");
        }
    }
}
?> 
Tengo esa clase, en el index hago:

Código PHP:
<?php
$main 
= new cpanel;
?>
Y para mostrar las palabras/frases:

Código PHP:
<?php echo $main->lang['return_main_page']; ?>
  #9 (permalink)  
Antiguo 30/03/2010, 12:45
Avatar de abimaelrc
Colaborador
 
Fecha de Ingreso: mayo-2009
Ubicación: En el planeta de Puerto Rico
Mensajes: 14.734
Antigüedad: 15 años
Puntos: 1517
Respuesta: Web multi-idioma con php y xml

Trata usando utf8_encode y utf8_decode.
__________________
Verifica antes de preguntar.
Los verdaderos amigos se hieren con la verdad, para no perderlos con la mentira. - Eugenio Maria de Hostos

Etiquetas: multi-idioma, xml
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 07:53.