Pessoal estou tentando adaptar um sistema simples multilinguagem em mysql, mas não estou conseguindo fazer funcionar a funcao.
Minha Base Mysql:
--
-- Estrutura da tabela `idiomas`
--
CREATE TABLE IF NOT EXISTS `idiomas` (
`textKey` varchar(50) NOT NULL,
`textValue_pt` text NOT NULL,
`textValue_es` text NOT NULL,
`textValue_it` text NOT NULL,
`lastUpdate` datetime NOT NULL DEFAULT '0000-00-00 00:00:00',
PRIMARY KEY (`textKey`)
) ENGINE=InnoDB DEFAULT CHARSET=latin1;
--
-- Extraindo dados da tabela `idiomas`
--
INSERT INTO `idiomas` (`textKey`, `textValue_pt`, `textValue_es`, `textValue_it`, `lastUpdate`) VALUES
('article', 'O texto em portugues', 'O texto em espanhol', 'O texto em italiano', '2011-09-20 17:27:30');
Arquivo php:
<?php
//crio uma sessao
session_start();
if ($_GET["idioma"]) {
$_SESSION["idioma"]=$_GET["idioma"];
} elseif (!$_SESSION["idioma"]) {
$_SESSION["idioma"]="pt";
}
//conecto ao bd
$hostname = "localhost";
$database = "sitetranslation";
$username = "root";
$password = "vertrigo";
$conec = mysql_connect($hostname, $username, $password) or die(mysql_error());
$bd = mysql_select_db($database, $conec);
//busco o idioma da sessao
$SESSAO = ($_SESSION["idioma"]);
//funcao para buscar os textos no idioma da sessao
function getText($textKey)
{
$strQuery = mysql_query("SELECT textValue_$SESSAO FROM idiomas WHERE textKey='$textKey'");
$myrow = mysql_fetch_array($strQuery);
return $myrow["textValue_$SESSAO"];
}
echo "<p><a href='index.php?idioma=pt'>Portugues</a></p>";
echo "<p><a href='index.php?idioma=es'>Espanhol</a></p>";
echo "<p><a href='index.php?idioma=it'>Italiano</a></p>";
//envia p/ a funcao o registro a busca o idioma e retorna o texto
echo getText("article");
?>
Se alguém estiver disposto em ajudar, desde já agradeço muito
Question
MCAsite
Pessoal estou tentando adaptar um sistema simples multilinguagem em mysql, mas não estou conseguindo fazer funcionar a funcao.
Minha Base Mysql:
Arquivo php:Se alguém estiver disposto em ajudar, desde já agradeço muito
Link to comment
Share on other sites
2 answers to this question
Recommended Posts
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.