elhacker.net cabecera Bienvenido(a), Visitante. Por favor Ingresar o Registrarse
¿Perdiste tu email de activación?.
 
Inicio Ayuda Ingresar Registrarse
08 Septiembre 2008, 07:01  



+  Foro de elhacker.net
|-+  Programación
| |-+  Desarrollo Web
| | |-+  PHP (Moderadores: Ertai, дٳŦ٭)
| | | |-+  Problema creando Multi-idioma
0 Usuarios y 1 Visitante están viendo este tema.
Páginas: [1] Ir Abajo Imprimir
Autor Tema: Problema creando Multi-idioma  (Leído 340 veces)
Erika Love

Desconectado Desconectado

Mensajes: 75



Ver Perfil
Problema creando Multi-idioma
« en: 18 Febrero 2008, 06:11 »

Bien chicos, pues este es mi problema, estoy codeando una web multidioma en PHP, pero tengo unos inconvenientes, lo que trato de hacer primero es definir un lenaguage por defecto pero a la hora de clickear en la bandera correspondiente al idioma este cambie all idioma elegido, todo va de maravilla, pero cuando clickeo en algun enlace de mi web vuelve al idioma por defecto, habria alguna manera de arreglar eso?

este es mi codigo en langs.php

Código
<?PHP
$langs=$_GET['langs'];
if(empty($langs)){
$langs = getenv("HTTP_ACCEPT_LANGUAGE");
     }
switch($langs){
         case "es" :
            include("language/lang-es.php");
            break;
         case "en" :
            include("language/lang-en.php");
            break;
         default :
            include("language/lang-en.php");
            break;
}
?>

Ahora en mi index.php que mas o menos es asi:
Código
...
...
<table width="200" border="0" cellspacing="2" cellpadding="2">
<tr>
<td><img src="images/language/es.gif" width="16" height="11" onclick="document.location='<?= $_SERVER['PHP_SELF'] ."?".$_SERVER["QUERY_STRING"]."&langs=es"?>'"></td>
<td><img src="images/language/en.gif" width="16" height="11" onclick="document.location='<?= $_SERVER['PHP_SELF'] ."?".$_SERVER["QUERY_STRING"]."&langs=en"?>'"></a></td>
</tr>
</table>
 
...
...
<? include("language/lang.php"); ?>
 
<table width="97" border="0" align="left" cellpadding="0" cellspacing="4">
<tr>
<td width="13"><div align="right"><img src="images/arrow.jpg" alt="Arrow" width="9" height="9"></div></td>
<td width="72" class="link_menu" align="left"><a href="index.php" target="_self"><? echo $lang["home"]; ?></a></td>
</tr>
<tr>
<td><div align="right"><img src="images/arrow.jpg" alt="Arrow" width="9" height="9"></div></td>
<td class="link_menu" align="left"><a href="index.php?op=downloads"><? echo $lang["Downloads"]; ?></a></td>
</tr>
...
...
 
 

Bien me coge los idiomas cuando clickeo en las imagenes pero el asunto es que cuando clickeo en los enlaces ahi mencionados se va al lenguaje por defecto (Cosa que no deseo, no se si se me entendio y si alguien podria darme algo de soporte.
En línea
chicuela66

Desconectado Desconectado

Mensajes: 79



Ver Perfil
Re: Problema creando Multi-idioma
« Respuesta #1 en: 18 Febrero 2008, 12:07 »

Yo crearia una variable de session del idioma.
En línea
Erika Love

Desconectado Desconectado

Mensajes: 75



Ver Perfil
Re: Problema creando Multi-idioma
« Respuesta #2 en: 18 Febrero 2008, 17:08 »

Gracias por tu respuesta bb pero podrias serme un poquito mas especifico?
En línea
darcon

Desconectado Desconectado

Mensajes: 23



Ver Perfil
Re: Problema creando Multi-idioma
« Respuesta #3 en: 18 Febrero 2008, 23:37 »

Busca en google: "sesiones en php"
son un tipo de variables globales que se manejan con el vector global $_SESSION

quedaria mas o menos asi:

Código
if ($_GET['langs']){
  $_SESSION['lang'] = $_GET['langs'];
}
switch($_SESSION['lang']){
  case 'es':
     include("language/lang-es.php");
  break;
  case 'fr':
     include("language/lang-fr.php");
  break;
  default:
     include("language/lang-en.php");
  break;
}
En línea


PHP Programmer
Erika Love

Desconectado Desconectado

Mensajes: 75



Ver Perfil
Re: Problema creando Multi-idioma
« Respuesta #4 en: 19 Febrero 2008, 07:03 »

Gracias chicos, son increibles!, eso de las sesiones me van de maravilla, pero como siempre surge un detalle mas ahora.

en la barra de direccion me concatena asi:

http://www.miwebsite.com/index.php?&langs=es&langs=en&langs=es&langs=en

Cada vez que clickeo, no habria forma de que solo tome una vez el idioma en mencion?.

Siento molestarlos con estas preguntas, quizas sean faciles de resolver como las de las sesiones, en verdad lo siento.
En línea
darcon

Desconectado Desconectado

Mensajes: 23



Ver Perfil
Re: Problema creando Multi-idioma
« Respuesta #5 en: 19 Febrero 2008, 15:13 »

en la barra de direccion me concatena asi:

http://www.miwebsite.com/index.php?&langs=es&langs=en&langs=es&langs=en

Cada vez que clickeo, no habria forma de que solo tome una vez el idioma en mencion?.

No entiendo muy bien, pero parece que el error esta en el atributo "onclick" de la imagen, no creo que sea necesario que le pases la variable $_SERVER["QUERY_STRING"]. Prueba con algo mas o menos así:
Código
<img src="images/language/es.gif" width="16" height="11" onclick="document.location='<? echo $_SERVER['PHP_SELF']."?langs=es"; ?>'">
 
<img src="images/language/en.gif" width="16" height="11" onclick="document.location='<? echo $_SERVER['PHP_SELF']."?langs=en"; ?>'">
 
En línea


PHP Programmer
Erika Love

Desconectado Desconectado

Mensajes: 75



Ver Perfil
Re: Problema creando Multi-idioma
« Respuesta #6 en: 19 Febrero 2008, 17:39 »

Gracias darcon eres increible, ahora esta completo! muy buen codigo el que me diste, en verdad muchas gracias.  :-* :-* :D
En línea
Páginas: [1] Ir Arriba Imprimir 
Ir a:  







Consolas     La Web de Goku     MilW0rm     MundoDivx

Hispabyte     Truzone     TodoReviews     ZonaPhotoshop

hard-h2o modding    Foros de ayuda    Yashira.org    Videojuegos    indetectables.net   

Noticias Informatica    Seguridad Informática    ADSL    Foros en español    eNYe Sec

Todas las webs afiliadas están libres de publicidad engañosa.

Powered by SMF 1.1.5 | SMF © 2006-2008, Simple Machines LLC