Foros del Web » Programando para Internet » PHP »

web 2 idiomas con get

Estas en el tema de web 2 idiomas con get en el foro de PHP en Foros del Web. hola a todos. a ver, tengo una web en dos idiomas y lo hago con esto: Código PHP: if( isset( $_GET [ 'lang' ]) &&  $_GET [ ...
  #1 (permalink)  
Antiguo 11/03/2007, 05:32
Avatar de estibaliz2006  
Fecha de Ingreso: noviembre-2006
Mensajes: 439
Antigüedad: 17 años, 5 meses
Puntos: 1
web 2 idiomas con get

hola a todos. a ver, tengo una web en dos idiomas y lo hago con esto:

Código PHP:
if( isset($_GET['lang']) && $_GET['lang'] == 'en' ){
    include(
"en.php");
}
elseif( isset(
$_GET['lang']) && $_GET['lang'] == 'es') {
    include(
"es.php");
}else{
    include(
"es.php");

es decir, si cargan ingles, se carga el archivo en.php y si cargan español o no cargan nada, el archivo es.php.

todo funciona correctamente. en mis páginas al principio coloco el código anterior y luego en cualquier enlace, hago este tipo:

<?php echo ("<A href=index.php?lang=".$lang.">Inicio</A>")?>

cuál es el problema. pues el problema está a la hora de los formularios. cojo un formulario, con unos campos que envía los datos a procesar.php que tiene un código para añadir los datos a la base de datos, y al final redirige la página a otra página, que debería cargar en español o en inglés según el caso. para eso hago esto al final de procesar.php:

Código PHP:
header("Location: exito.php?lang=".$lang.""); 
pero no recoge el lenguaje. es decir, me abre la página éxito pero siempre en español porque no recoge el valor de la variable lang. qué hago mal?
  #2 (permalink)  
Antiguo 11/03/2007, 11:41
Avatar de DeeR  
Fecha de Ingreso: diciembre-2003
Ubicación: Santiago
Mensajes: 520
Antigüedad: 20 años, 4 meses
Puntos: 17
Re: web 2 idiomas con get

Cita:
Iniciado por estibaliz2006 Ver Mensaje
...
cuál es el problema. pues el problema está a la hora de los formularios. cojo un formulario, con unos campos que envía los datos a procesar.php
Lo que deduzco, es que para procesar.php la variable $lang no existe, ya que no se la enviaste por get en el formulario

Código PHP:
echo '<form id="form1" name="form1" method="post" action="procesar.php?lang='.$lang.'">'
Es ovbio que a procesar.php le llega el lenguaje en la matriz global $_GET o $_REQUEST y se se las asignas a $lang = $_REQUEST['lang'];

Saludos


PD : Seria mejor, que la variable lang , la guardes en una cookie o variable de session, de esta manera, todos tus script del dominio tendria acceso a esta variable, envez de mandarsela a cada script.
  #3 (permalink)  
Antiguo 11/03/2007, 14:04
Avatar de estibaliz2006  
Fecha de Ingreso: noviembre-2006
Mensajes: 439
Antigüedad: 17 años, 5 meses
Puntos: 1
Re: web 2 idiomas con get

Cita:
PD : Seria mejor, que la variable lang , la guardes en una cookie o variable de session, de esta manera, todos tus script del dominio tendria acceso a esta variable, envez de mandarsela a cada script.
Sí, si eso llevo intentando hacer desde que me puse con esto, pero no sé cómo hacerlo. cómo tengo que hacerlo?
  #4 (permalink)  
Antiguo 11/03/2007, 14:11
Avatar de estibaliz2006  
Fecha de Ingreso: noviembre-2006
Mensajes: 439
Antigüedad: 17 años, 5 meses
Puntos: 1
Re: web 2 idiomas con get

respecto al archivo procesar.php. yo tengo lo siguiente:

Código PHP:
include("conex.php");
$nombre=$_POST['nombre'];
$apellidos=$_POST['apellidos'];
$empresa=$_POST['empresa'];

mysql_query("INSERT INTO tabla(nombre,apellidos,empresa) VALUES('$nombre','$apellidos','$empresa')");
header("Location: index.php?mod=9&lang=".$lang.""); 
como rescato el valor de lang que es pasado mediante el form:
Código PHP:
echo '<form id="form1" name="form1" method="post" action="procesar.php?lang='.$lang.'">'
si como digo, en las páginas "normales" tengo para detectar el lenguaje esto:

Código PHP:
if( isset($_GET['lang']) && $_GET['lang'] == 'en' ){ 
    include(
"en.php"); 

elseif( isset(
$_GET['lang']) && $_GET['lang'] == 'es') { 
    include(
"es.php"); 
}else{ 
    include(
"es.php"); 

  #5 (permalink)  
Antiguo 11/03/2007, 14:23
Avatar de estibaliz2006  
Fecha de Ingreso: noviembre-2006
Mensajes: 439
Antigüedad: 17 años, 5 meses
Puntos: 1
Re: web 2 idiomas con get

olvidad lo último... cuando me bloqueo es que no doy ni con lo más sencillo. ya está solucionado...
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 12:54.