Foros del Web » Programando para Internet » PHP »

obtener la url actual con Smarty

Estas en el tema de obtener la url actual con Smarty en el foro de PHP en Foros del Web. Hola amigos de Foros del Web Estoy diseñando un sitio web en dos idiomas, inglés y portugues. el usuario debe seleccionar el idioma y automaticamente ...
  #1 (permalink)  
Antiguo 03/04/2010, 11:17
 
Fecha de Ingreso: febrero-2010
Mensajes: 24
Antigüedad: 14 años, 2 meses
Puntos: 0
Información obtener la url actual con Smarty

Hola amigos de Foros del Web

Estoy diseñando un sitio web en dos idiomas, inglés y portugues. el usuario debe seleccionar el idioma y automaticamente se recarga la pagina en el nuevo idioma.
la seleccion del idioma la hago a través de dos enlaces como se muestra abajo:

Select Language:
EN | PT

a estos enlances quiero ponerles en el href la direccion de la pagina actual incluyendo los get que ya tiene y agregarle &lg=en como indicador del nuevo idioma que esta seleccionando el usuario, para que cuando vaya a la pagina php me coja el idioma. estos links estan en un tpl diseñado con Smarty.

mi duda es cómo puedo obtener a través de Smarty la url actual de la pagina incluyendo todos los GET.

pensaba en esta forma
<a href="{$link_pagina_actual}&lg=en"/>

gracias a todos de antemano por su ayuda

se aceptan todos los consejos y sugerencias

Saludos

Rosy
  #2 (permalink)  
Antiguo 03/04/2010, 23:04
 
Fecha de Ingreso: febrero-2010
Mensajes: 24
Antigüedad: 14 años, 2 meses
Puntos: 0
De acuerdo Respuesta: obtener la url actual con Smarty

Hola a todos los amigos

Buscando y buscando, logre encontrar la solucion, es sencilla pero funciona.

aca les dejo mi modesto aporte.

Consiste en armar la cadena del link en la pagina PHP y pasarselo a una variable que se muestra en el .tpl, en este caso index.php e index.tpl

gracias a todos



Codigo PHP index.php:

Código:
 $self = $_SERVER['PHP_SELF'];
    $query = !empty($_SERVER['QUERY_STRING']) ? $_SERVER['QUERY_STRING'] : null;
    //eliminar de la query si ya existe lg=en
    $urlpt = !empty($query) ? "$self?$query&lg=pt" : "$self?lg=pt";
    $urlen = !empty($query) ? "$self?$query&lg=en" : "$self?lg=en";

    $smarty->assign('linkpt',$urlpt);
    $smarty->assign('linken',$urlen);
Codigo HTML con Smarty index.tpl:

Código:
<div> <p class="alogout">Select Language<br>
      <a title="{$en}" href="{$linken}">EN</a>
      <a title="{$pt}" href="{$linkpt}">PT</a>
      </p>
</div>

Etiquetas: smarty, url
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 20:25.