Jump to content

[Duvida] Várias linguagens no site


Recommended Posts

Posted

Boas a todos

Estou aqui com uma duvida, o meu site tem 2 línguas (inglês e português) a minha duvida é fazer com que o utilizador ao seleccionar a língua que prefere, a língua escolhida se mantenha até ele decidir mudar. Já tive a ler noutros tópicos a falarem em sessões, mas o meu site não tem login.

Se alguém souber poderá colocar aqui o código ou dicas sff.

Cumprimentos  🙂

Posted
Já tive a ler noutros tópicos a falarem em sessões, mas o meu site não tem login.

O que não impede que tenha sessões e/ou cookies.

"Para desenhar um website, não tenho que saber distinguir server-side de client-side" - um membro do fórum que se auto-intitula webdesigner. Temo pelo futuro da web.

Posted

O código que estou a testar é este

pt.php

?php
define("HELLO","Bemvindo");
?>

en.php

<?php
define("HELLO","Welcome");
?> 

index.php

<?php 


if(!isset($_GET["lang"]))
{
	$lingua = "pt";
}
else
{

	$lingua = $_GET["lang"];
}


if($lingua=="pt" || $lingua=="en")
{

	include( $lingua.".php");
}

echo "<a href=\"". basename(__FILE__)."?lang=pt\" target=\"_self\"> 
Português </a>";
echo "  ";
echo "<a href=\"". basename(__FILE__)."?lang=en\" target=\"_self\">
English </a>";


echo "<br><hr><b>";
$hi=hello;
echo "<a href=\"info.php?id=$myrow[id]\">$hi</a>";
echo "</b>";
?> 

O que eu queria é que ao carregar na hiperligação(<a href=\"info.php?id=$mr[id]\">$mais</a>) a linguagem continuasse a mesma que foi seleccionada.

Já experimentei usar sessões mas não consegui por a funcionar, tentei adicionar manualmente a linguagem neste link (info.php?id=1), mas sem sucesso.

Se alguém puder ajudar-me agradecia.

Cumprimentos

Posted

O que é que já fizeste usando sessões?

O processo é extremamente linear: abres a sessão e consultas/crias/alteras os dados relevantes (neste caso, a linguagem).

"Para desenhar um website, não tenho que saber distinguir server-side de client-side" - um membro do fórum que se auto-intitula webdesigner. Temo pelo futuro da web.

Posted

Existem muitas formas. Dá um olhadela a algumas sugestões:

http://www.portugal-a-programar.pt/index.php?showtopic=16460

Para guardares o idioma escolhido, tens de usar sessões, como foi dito, por exemplo:

<?php
session_start();

if (empty($_SESSION['language']))
  // idioma por omissão
  $_SESSION['language'] = "en";

// codigo...
?>

Para definir o idioma, recebes da forma que acahres melhor, e basta fazer o seguinte:

<?php
session_start();

// receber e tratar dos resultados, e armazenar o resultado final em $novoIdioma
$_SESSION['language'] = $novoIdioma;
?>

Nick antigo: softclean | Tens um projeto? | Wiki P@P

Ajuda a comunidade! Se encontrares algo de errado, usa a opção "Denunciar" por baixo de cada post.

Posted

surgiu-me uma nova duvida  ?

o site tem duas línguas português e inglês

por exemplo a página principal é index.php e com a linguagem em inglês é index.php?lang=en

mas não consigo mudar na página teste.php?id=1 , tentei adicionar manualmente para teste.php?id=1?lang=pt , mas não funcionou

Pensei em criar uma página para o utilizador seleccionar a língua, mas resolvi não fazer isso. Há alguma maneira de alterar isto?

Cumprimentos

Posted

quando queres passar mais do que uma variável através do link tens de fazer: teste.php?id=1&lang=pt, nao é com ? mas com &

apenas a primeira variável é com ?, as restantes são com &

...Join the dark side...and get a free cookie...

Posted

quando queres passar mais do que uma variável através do link tens de fazer: teste.php?id=1&lang=pt, nao é com ? mas com &

apenas a primeira variável é com ?, as restantes são com &

obrigado pela resposta já está a funcionar 😁

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
×
×
  • Create New...

Important Information

By using this site you accept our Terms of Use and Privacy Policy. We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue.