Olá,
Eu tinha criado esse tópico com meu login antigo, que era linkado à minha conta do Twitter. Mas não consegui logar mais com aquela conta e tive de criar uma nova:
http://forum.imasters.com.br/topic/537319-mudanca-de-idioma-em-site-php-de-acordo-com-link/
Então repetindo a questão, meu site em PHP tem três idiomas e uma função changeLang(lang) que muda perfeitamente o idioma de português pra inglês ou espanhol. Contudo, o link da minha página sempre fica o mesmo, mesmo quando eu mudo o idioma:
http://www.minhapagina.com/phase01?lang=pt-br
Sendo que o idioma é modificado em um botão de seleção de idioma que tem no cabeçalho da mesma. Nesse botão, é executada a função changeLang:
function changeLang(idLang) { $("#comboLang").css("display", "none"); $("#langAtiva").html($("#lang" + idLang).val()); var lang = ''; if(idLang==0){ lang = 'pt-br'; }else if(idLang==1){ lang = 'eng'; }else if(idLang==2){ lang = 'esp'; } $("#lang").val(lang); //alert(location.href); $.ajax({ url : 'usuario/mudaLingua', async : false, dataType : 'json', type : 'POST', data : { lang : lang }, success : function(data) { location.reload(); } }); }
E a função mudaLingua dessa URL:
public function mudaLingua(){ session_start("usuario"); $_SESSION['usuario']['lang'] = $_REQUEST['lang']; }
A ideia sugerida pra mudar o idioma quando muda a URL foi:
if (array_key_exists('lang', $_GET)) $_SESSION['usuario']['lang'] = $_GET['lang'];
E funcionou bem. Coloquei no início da minha página, phase01.php. Mas aí o botão do cabeçalho deixa de funcionar.
O que eu poderia tentar pra que as duas coisas funcionem?