iMasters Fóruns: Script de idioma para site... - iMasters Fóruns

Ir para

Bom uso da área


Atenção:
Este sub-fórum é destinado apenas para postagem de scripts prontos e testados para auxiliar os demais membros.
Não é permitido a abertura de tópicos com dúvidas. Para isso, use o Fórum de PHP.
Página 1 de 1
  • Novo tópico
  • Fechado

Script de idioma para site... pt, es, en...

#1 Membro offline   Cerrito Ícone

  • Ícone
  • Grupo: Membros
  • Posts: 1310
  • Cadastrado: 04-abril 03
  • Localização:Caxias do Sul

Postou 10 março 2005 - 08:41

Bom galera fiz esse script a um tempo atras para um projeto da empresa em que trabalho...
é simples e funcional de e serve muito bem para projetos pequenos e de médio porte, tvz projetos grandes se tornem um pouco mais dificeis de gerenciar...

bom esse é o script que seta o idioma...
dei o nome de setidioma.php
PHP
<?php
/******************************* BY MRS 05/06/2004 ****************************************************************************\
* *** *
* esse arquivo verifica se o usuario marcou um idioma, caso seja verdadeiro ele seta esse idioma e grava um cookei com duração de *
* um mes, para que na próxima vez ele já venha com o idioma setado... *
* caso contrário ele verifica se existe um cookie com o idioma, caso não tenha ele pega o idioma do navegador e seta esse *
* +++ *
/********************************************************************************
***************************************************** */

ob_start();
$default = "pt"; // padrão será o portugues...

if( isset( $_POST['trocaIdioma'] ) )
{
require $_POST['trocaIdioma'] . ".php";
setcookie("guardaIdioma", $_POST['trocaIdioma'], time()+3600*24*30, '/'); // cookie com tempo de expiração de 1 mes
}
else
if( isset($_COOKIE["guardaIdioma"]) )
{
require $_COOKIE["guardaIdioma"] . ".php";
}
else
if (!isset($_SERVER['HTTP_ACCEPT_LANGUAGE']))
{
require $default .".php";
}
else
{
$idioma = $_SERVER['HTTP_ACCEPT_LANGUAGE'];
$idioma = substr($idioma,0,2); // separando o idioma....
if( ( $idioma == "pt") or ( $idioma == "es") or ( $idioma == "en") ) // verificando se é um idioma válido
{
require $idioma . ".php";
}
else
{
require $default . ".php";
}
}
ob_end_flush();
?>




Arquivo onde será guardado o idioma pt...
nome desse arquivo é pt.php
PHP

<?
$texto['titulo'] = "Informações do sistema";
$texto['usada'] = "Usado";
$texto['livre'] = "Livre";
$texto['espacoTotal'] = "Tamanho";
$texto['dataHora'] = "Data/Hora";
$texto['nomeDaMaquina'] = "None do servidor";
$texto['dominio'] = "Dominio";
$texto['host'] = "Host";
$texto['uptime'] = "Tempo de vida";
$texto['numeroProcessos'] = "Numero de Processos";
$texto['sistemaOperacional'] = "Sistema operacional";
$texto['vKernel'] = "Versão do Kernel";
$texto['usuarios'] = "Usuários";
?>


arquivo com espanhol...
nome desse arquivo é es.php

PHP

<?php

$texto['titulo'] = "System Information";
$texto['usada'] = "Usage";
$texto['livre'] = "Free";
$texto['espacoTotal'] = "Space total";
$texto['dataHora'] = "Date/time";
$texto['nomeDaMaquina'] = "Computer Name";
$texto['dominio'] = "Domain";
$texto['host'] = "Host address";
$texto['uptime'] = "Server time life";
$texto['numeroProcessos'] = "Processors number";
$texto['sistemaOperacional'] = "Operational System";
$texto['vKernel'] = "Kernel Version";
$texto['usuarios'] = "Users";
$texto['totalUsuarios'] = "Current Users";
?>


arquivo com idioma em inglês...
nome desse arquivo é en.php
PHP

<?php
$texto['titulo'] = "System Information";
$texto['usada'] = "Usage";
$texto['livre'] = "Free";
$texto['espacoTotal'] = "Space total";
$texto['dataHora'] = "Date/time";
$texto['nomeDaMaquina'] = "Computer Name";
$texto['dominio'] = "Domain";
$texto['host'] = "Host address";
$texto['uptime'] = "Server time life";
$texto['numeroProcessos'] = "Processors number";
$texto['sistemaOperacional'] = "Operational System";
$texto['vKernel'] = "Kernel Version";
$texto['usuarios'] = "Users";

?>


bom galera agora tem apenas a parte de trocar o script...

PHP


// seria algo assim...
require "setidioma.php"; // chama as configurações de idioma...
// troca o idioma...
<table align=right>
<td class=textoUsoGeral><?php echo $texto['fraseIdioma']; ?><form method="post" action="informacoes.php">
<select name="trocaIdioma" class=forms>
<option value="pt"><?php echo $texto['portugues']; ?></option>
<option value="es"><?php echo $texto['espanhol']; ?></option>
<option value="en"><?php echo $texto['ingles']; ?></option>
</select>
<input type=submit name=ok value=ok>
</form>
</td>
</table>


bom galera é isso...
claro que pode ser usado banco de dados, mas nesse caso, por questões internas não usamos, pois muitos clientes não queriam dispor de um banco...
vai saber prque...
e ficaria mais facil a implementação dessa maneira...

abraços a todos
Marcio

#2 Membro offline   Leandro Vieira Pinho Ícone

  • Ícone
  • Grupo: Membros
  • Posts: 954
  • Cadastrado: 18-julho 04
  • Localização:Governador Valadares - MG

Postou 10 março 2005 - 14:26

Cerrito, muito interessante, estou a desenvolver um site, que precisará estar disponível em 3 idiomas. Mas não entendi muito bem como utilizar o seu script.

Tipo assim:

tenho um site normal todo em português, ai eu teria que ter uns arquivos nas outras línguas, para substituir os textos? Chamando os mesmo por include?

#3 Membro offline   Cerrito Ícone

  • Ícone
  • Grupo: Membros
  • Posts: 1310
  • Cadastrado: 04-abril 03
  • Localização:Caxias do Sul

Postou 10 março 2005 - 14:53

Bom na verdade leandro...
ficaria algo assim...

tipo você tem seu site onde você teria a frase "Seja bem vindo"
bom no site na verdade você teria algo parecido com isso
include "setIdioma.php"; // esse seria o arquivo que verifica o idioma,
ele ve o idioma do navegador e seta o idioma entre pt, es, en se não for nenhum desses, por default será pt...

$texto['saudacao'];

em resumo tudo que você queira que fique em outro idioma você não irá colocar o texto puro e sim uma referencia para os arquivos...

note que os arquivos pt, en, es devem ter o mesmo conteudo, na sua devida lingua claro...

caso ainda tenha duvida me de um grito que tento explicar melhor ok...

abraços

Marcio

obs:
dei uma melhorada na explicação do scriupt acima...
da uma olhada acho que agora tá mais claro...

#4 Membro offline   Leandro Vieira Pinho Ícone

  • Ícone
  • Grupo: Membros
  • Posts: 954
  • Cadastrado: 18-julho 04
  • Localização:Governador Valadares - MG

Postou 10 março 2005 - 17:00

beleza, deu pra entender sim!

mas se for algo dinâmico, tipo um portal de notícia? como ficaria?

#5 Membro offline   Cerrito Ícone

  • Ícone
  • Grupo: Membros
  • Posts: 1310
  • Cadastrado: 04-abril 03
  • Localização:Caxias do Sul

Postou 10 março 2005 - 17:10

Ai creio que seria mais facil ao inves de cadastrar em arquivos criar em banco...
e só fazer ele buscar no banco ao invés dos arquivos, pois fica mais facil de gerenciar...
abraços

Marcio

qualquer coisa vai gritando ai...

#6 Membro offline   Leandro Vieira Pinho Ícone

  • Ícone
  • Grupo: Membros
  • Posts: 954
  • Cadastrado: 18-julho 04
  • Localização:Governador Valadares - MG

Postou 11 março 2005 - 00:42

Cerrito, em Mar 10 2005, 05:10 PM, disse:

Ai creio que seria mais facil ao inves de cadastrar em arquivos criar em banco...
e só fazer ele buscar no banco ao invés dos arquivos, pois fica mais facil de gerenciar...
abraços

Marcio

qualquer coisa vai gritando ai...

desulpe o incômodo heehe, mas tipo assim:

suponhamos que seja um portal de notícia, então precisaria escrever a notícia 3 vezes, e ter 3 tabelas né?

#7 Membro offline   hinom Ícone

  • Ícone
  • Grupo: Masters
  • Posts: 12238
  • Cadastrado: 24-fevereiro 03
  • Sexo:Indefinido

Postou 11 março 2005 - 06:52

manero cerrito!

eu trabalho nesse estilo também
com os idiomas em arrays

#8 Membro offline   Cerrito Ícone

  • Ícone
  • Grupo: Membros
  • Posts: 1310
  • Cadastrado: 04-abril 03
  • Localização:Caxias do Sul

Postou 11 março 2005 - 08:59

É simples, mas eficiiente...
quebra o maior galho...

Marcio

#9 Membro offline   Cerrito Ícone

  • Ícone
  • Grupo: Membros
  • Posts: 1310
  • Cadastrado: 04-abril 03
  • Localização:Caxias do Sul

Postou 11 março 2005 - 09:02

Leandro Vieira Pinho, em Mar 11 2005, 12:42 AM, disse:

Cerrito, em Mar 10 2005, 05:10 PM, disse:

Ai creio que seria mais facil ao inves de cadastrar em arquivos criar em banco...
e só fazer ele buscar no banco ao invés dos arquivos, pois fica  mais facil de gerenciar...
abraços

Marcio

qualquer coisa vai gritando ai...

desulpe o incômodo heehe, mas tipo assim:

suponhamos que seja um portal de notícia, então precisaria escrever a notícia 3 vezes, e ter 3 tabelas né?

Bom poderia ser em 03 tabelas ou em uma tab. com dois campos que seriam os diferenciais...
1 - identifica o idioma...
2 - identifica o texto...
alem de um id claro...

abraços

Marcio

#10 Membro offline   red neck * Ícone

  • so sei que nao sei nada
  • Ícone
  • Grupo: Membros
  • Posts: 789
  • Cadastrado: 09-março 05
  • Localização:São Paulo, SP

Postou 11 março 2005 - 13:13

talvez poderia usar algum sistema de traducao tambem...

tipo: o usuario quer em ingles, vai no google e pede para retornar o texto em ingles, so que ai precisaria estudar como funciona o google e talz, ate ai é o de menos, o mais complicado é que esses sistemas de traducao nao sao 100%...

mais ta ai uma ideia

abracos

#11 Membro offline   pcdesign Ícone

  • Ícone
  • Grupo: Membros
  • Posts: 394
  • Cadastrado: 31-maio 05
  • Localização:Aracati

Postou 02 novembro 2006 - 12:58

você poderia dar um pequeno exemplo pratico com bd
para melhor compreenção.

Para funcionar tenho que criar script nos 3 idomas?
Teria tambem ter uma bd para cada indioma?

Se tenho um menu com bd.

tabMenu_pt
tabMenu_esp
tabMenu_en

Acho que estou voando no assunto.
obrigado

#12 Membro offline   rdegouveia Ícone

  • Ícone
  • Grupo: Membros
  • Posts: 5
  • Cadastrado: 30-maio 05

Postou 30 novembro 2006 - 10:27

Olá,

Estou efetuando um levantamento através da net sobre as práticas de desenvolvimento de sites multi-idiomas. Para uma questão ainda consegui respostas. Como é o design-time (em tempo de desenvolvimento) deste tipo de desenvolvimento, onde você não possui os textos, pois, os mesmos estão em arquivos xml ou banco de dados, você perde a referência para a definição do lay-out. A pergunta agora é, existe alguma forma, por exemplo utilizando o Dreamwaver de setar variáveis com conteúdos advindos de arquivos xml ou banco de dados para utilizar como referências em tempo de desenvolvimento?

Desde já agradeço a atenção,

#13 Membro offline   mapb_1990 Ícone

  • Ícone
  • Grupo: Membros
  • Posts: 61
  • Cadastrado: 22-fevereiro 08

Postou 22 fevereiro 2008 - 16:36

achei este metedo mt simples.
obrigado por disponibilizares aki para o pessoal.

tipo, no codigo, a escolha do idioma é feita através de uma listbox.
o k keria era seleccionar o idioma atraves de imagens.
como é k faço isso

as imagens k tenho são:~
CODE
<span class="titulo">Escolha a linguagem:</span>&nbsp;&nbsp;&nbsp;&nbsp;<img src="images/pt.gif" alt="Português">&nbsp;&nbsp;&nbsp;&nbsp;<img src="images/uk.gif" alt="Inglês">


#14 Membro offline   Beraldo Ícone

  • There's no place like 127.0.0.1
  • Ícone
  • Grupo: Membros
  • Posts: 7807
  • Cadastrado: 02-julho 06
  • Sexo:Masculino
  • Localização:Curitiba - PR

Postou 23 fevereiro 2008 - 22:39

Crie links nas imagens, de forma a produzir o mesmo efeito que realizava com o listbox. :thumbsup:

#15 Membro offline   mapb_1990 Ícone

  • Ícone
  • Grupo: Membros
  • Posts: 61
  • Cadastrado: 22-fevereiro 08

Postou 25 fevereiro 2008 - 04:02

Ver postBeraldo, em 24/02/2008 - 01:39, disse:

Crie links nas imagens, de forma a produzir o mesmo efeito que realizava com o listbox. :thumbsup:

como é k ficava isso?

#16 Membro offline   Beraldo Ícone

  • There's no place like 127.0.0.1
  • Ícone
  • Grupo: Membros
  • Posts: 7807
  • Cadastrado: 02-julho 06
  • Sexo:Masculino
  • Localização:Curitiba - PR

Postou 25 fevereiro 2008 - 08:29

Como você fazia com o list box? Você não criava links assim?
www.site.com/?lang=pt

Ou algo parecido?

Com imagens, basta criar link:
<a href="?lang=pt"><img src="pt.gif" alt="Português" /></a>


#17 Membro offline   mapb_1990 Ícone

  • Ícone
  • Grupo: Membros
  • Posts: 61
  • Cadastrado: 22-fevereiro 08

Postou 26 fevereiro 2008 - 17:01

mt obrigada

#18 Membro offline   DarkDragonLord Ícone

  • raphaelddl.com
  • Ícone
  • Grupo: Membros
  • Posts: 128
  • Cadastrado: 18-abril 05
  • Localização:Belo Horizonte/MG

Postou 29 fevereiro 2008 - 15:37

Sem ser spam ou coisa do tipo mas, eu uso este sistema que ele fez no meu site, só que implementei um pouquinho ele.

Caso queiram ter um exemplo prático como um site funciona com isso, é o primeiro site da minha assinatura. Lá são imagens das bandeiras que mudam, do jeito que mapb queria e o Beraldo explicou.

Como voces podem ver, é possível fazer as imagens do site inteiro serem dinamicas também, ou seja, fazer algo do tipo: (exemplo com o logo do meu site)

as imagens são en_logo ou pt_logo
<img src="./images/
<?php
$default = "en"; 

if( isset( $_GET['lang'] ) )
{
echo $_GET['lang'] . "_logo";
}
else

if (!isset($_SERVER['HTTP_ACCEPT_LANGUAGE']))
{
echo $default;
}
else
{
$idioma = $_SERVER['HTTP_ACCEPT_LANGUAGE'];
$idioma = substr($idioma,0,2); // separando o idioma....
if( ( $idioma == "pt") or ( $idioma == "en") ) // verificando se é um idioma válido
{
echo $idioma . "_logo";
}
else
{
echo $default;
}
}
?>.jpg" border="0">




Ou por exemplo, usando as bandeirinhas dos países... SE colocar igual ao Beraldo disse, a pessoa que estiver já navegando no site, na hora que clicar no link, vai voltar a página inicial..
portanto eu fiz um codigo que detecta. Se estiver alguma variável na URL (meu include é ?ddl= entao o $_GET tem valor ddl), ele pega a variável e adiciona a chamada da lingua, assim ele muda de texto sem sair da pagina que estava. Se não achar nenhum valor no DDL, ele só imprime o ?lang=

<a href="<?php $_SERVER['PHP_SELF'] ?> <?php
$default = "?";

if( isset( $_GET['ddl'] ) )
{
echo "?ddl=" . $_GET['ddl'] . "&";
}
else
{
echo $default;
}
?>lang=pt"><img src="images/flag_br.png" border="0" style="width: 32px; height: 32px;"></a>  <a href="<?php $_SERVER['PHP_SELF'] ?> <?php
$default = "?";

if( isset( $_GET['ddl'] ) )
{
echo "?ddl=" . $_GET['ddl'] ."&";
}
else
{
echo $default;
}
?>lang=en"><img src="images/flag_us.png" border="0" style="width: 32px; height: 32px;"></a>





Ah, só um lembrete. Usem os códigos de caracteres nos arquivos de língua (ou seja, n&atilde;o ao invés de escrever não direto). No meu site, isso dá mó pal, vou ter que reescrever tudo com os codigos...
o $texto['pt_services'] = "Serviços Disponí­veis Para Você" ; virou Serviços Disponíveis Para Você


AGRADEÇO bastante o cerrito.
Graças ao codigo dele, além do sistema multi-lingua, eu aprendi um pouco de php lendo e tentando entender o código.

#19 Membro offline   Deives Ícone

  • Ícone
  • Grupo: Membros
  • Posts: 172
  • Cadastrado: 15-dezembro 05

Postou 29 julho 2008 - 11:26

Eai galera, estou com alguns problemas...

1° [resolvido]

2° Sobre os scripts do DarkDragonLord, consegui trocar as imagens perfeitamente, mas minha dúvida é como trocar o texto

Por formulário funciona corretamente, igual ao exemplo no 1° post deste tópico.

Com as bandeiras como posso trocar o idioma do texto também, exatamente igual ao site http://raphaelddl.com ?

#20 Membro offline   Deives Ícone

  • Ícone
  • Grupo: Membros
  • Posts: 172
  • Cadastrado: 15-dezembro 05

Postou 29 julho 2008 - 11:56

Sobre o 1° problema já resolvi, fechei o EasyPHP e abri novamente e atualizou, mas ainda estou com problema com o item 2...

#21 Membro offline   sadboar Ícone

  • Carlos Zillner
  • Ícone
  • Grupo: Membros
  • Posts: 230
  • Cadastrado: 04-junho 05
  • Sexo:Masculino
  • Localização:São Paulo - SP

Postou 29 julho 2008 - 21:37

Só uma coisinha

Não seria melhor usar constant como é feito no php nuke?

Ao q me parece o tempo de processamento é melhor... pois com arrays o php ainda tem q buscar dentro da array o valor para a chave mencionada.

#22 Membro offline   Deives Ícone

  • Ícone
  • Grupo: Membros
  • Posts: 172
  • Cadastrado: 15-dezembro 05

Postou 31 julho 2008 - 11:51

sadboar, você teria um exemplo pronto ?

#23 Membro offline   DarkDragonLord Ícone

  • raphaelddl.com
  • Ícone
  • Grupo: Membros
  • Posts: 128
  • Cadastrado: 18-abril 05
  • Localização:Belo Horizonte/MG

Postou 31 julho 2008 - 14:19

Ver postDeives, em 29/07/2008 - 11:26, disse:

Eai galera, estou com alguns problemas...

1° [resolvido]

2° Sobre os scripts do DarkDragonLord, consegui trocar as imagens perfeitamente, mas minha dúvida é como trocar o texto

Por formulário funciona corretamente, igual ao exemplo no 1° post deste tópico.

Com as bandeiras como posso trocar o idioma do texto também, exatamente igual ao site http://raphaelddl.com ?


Uai, trocar texto é muito mais simples :P

se você ker escrever por exemplo, um texto introdutório na pagina de seu portfolio (como fiz no meu), você faz o seguinte:


Abre o pt.php e adicione:

$texto['introducao_portfolio'] = "Aqui você encontrará tudo que já fiz ou estou fazendo no momento. Tenha em mente que algumas seções possuem algumas coisas para download, como a "Web Sites", que possui alguns Templates Grátis para você";


Agora Abra o en.php e adicione: (MESMO NOME DE VARIAVEL QUE COLOCOU NO OUTRO)

$texto['introducao_portfolio'] = "Here you will find everything i made or currently making. Keep in mind that some sections have some downloads, as "Web Sites", with some Free Templates for you.";


Pronto.

Agora, para que o texto apareça, simplesmente, no lugar que você quer adicioná-lo, escreva o php para chama-lo:
<?php echo $texto['introducao_portfolio']; ?>

Ai qdo você abrir o site, ele ja vai catar esse $texto do pt ou en e adicionar, de acordo com a liguagem do browser ou escolha do usuario.

para adicionar outros textos, repita o processo adicionando mais uma linha nos en/pt.php mudando o nome dentro dos $texto['XXXXXXX']


btw, tendi nada q o sadboar falou pq eu nao sei usar constant aShausahSuhaSH

#24 Membro offline   Deives Ícone

  • Ícone
  • Grupo: Membros
  • Posts: 172
  • Cadastrado: 15-dezembro 05

Postou 31 julho 2008 - 14:47

Dark, abaixo está os arquivos que estou fazendo os testes:
http://www.locatoron.../files/lang.zip

Na realidade, quero que quando clicar na bandeira ele mude, além da imagem que já está mudando, o texto, utilizando ?lang=pt-br...

No script inicial do post ele muda através de um select, pegando o valor por $_POST

Se você baixar o arquivo acima irá entender melhor...

obrigado pela atenção !

#25 Membro offline   DarkDragonLord Ícone

  • raphaelddl.com
  • Ícone
  • Grupo: Membros
  • Posts: 128
  • Cadastrado: 18-abril 05
  • Localização:Belo Horizonte/MG

Postou 31 julho 2008 - 16:47

AGORA O POST TAH CERTO, APERTEI ENVIAR SEM KERER ANTES DE TERMINAR DE ESCREVER


Ver postDeives, em 31/07/2008 - 14:47, disse:

Dark, abaixo está os arquivos que estou fazendo os testes:
http://www.locatoron.../files/lang.zip

Na realidade, quero que quando clicar na bandeira ele mude, além da imagem que já está mudando, o texto, utilizando ?lang=pt-br...

No script inicial do post ele muda através de um select, pegando o valor por $_POST

Se você baixar o arquivo acima irá entender melhor...

obrigado pela atenção !



Ahmmm..
Agora entendi.

Bom, eu tinha até respondido aqui: http://forum.imaster...p...st&p=986177 no segundo quote.


Mas ok, vamos por partes usando seu arquivo :P

Aqui é como você está fazendo:
<!-- MUDANDO LINGUAGEM POR IMAGEMS -->
<!-- LINGUAGEM PORTUGUÊS -->
<a href="<?php $_SERVER['PHP_SELF'] ?>
<?php
$default = "?";
echo $default;
?>lang=pt-br"><img src="images/bandeira_Brasil.jpg" width="16" height="16" border="0"></a>



O PHP que você colocou ai foi meio inútil pq era só escrever ? assim
<a href="?lang=pt-br"><img src="images/bandeira_Brasil.jpg" width="16" height="16" border="0"></a>


Mas de qualquer forma, bora lá fazer do jeito que clicando ele muda de linguagem E continua na página que voce está (Assim nao muda para a inicial toda hora que clicar)

O codigo é o seguinte: (na qual ddl dentro do $_GET é apenas o nome que dei para usar com o include (poderia ser pag ou p ou qualquer coisa)
<a href="<?php $default = "?"; if( isset( $_GET['ddl'] ) ){echo "?ddl=" . $_GET['ddl'] . "&amp;";}else{echo $default;}?>lang=pt-br"><img src="images/bandeira_Brasil.jpg" width="16" height="16" border="0"></a>


Agora destrinchando
<?php
$default = "?";
if( isset( $_GET['ddl'] ) ) {
echo "?ddl=" . $_GET['ddl'] . "&amp;";
} else {
echo $default; }
?>


Se estiver setado o ddl, vai echo ?ddl=OQtiverSETADO& assim, o link ficaria href="?ddl=OQtiverSETADO&lang=pt-br".
Se nao estiver setado o ddl, vai echo ? assim, o link ficaria href="?lang=pt-br".

Acho que agora deu pra entender, embora eu tenha explicado superficialmente :)


Edit no Post v2:

Acho que nem precisa do default agora que to relendo esse codigo véio meu :P
pode ficar só assim pra reduzir alguns bytes no arquivo (sem o else, antigamente eu achava que todo if deveria ter um else AHaahAhaahH viva a epoca que começei a aprender PHP usando esse codigo de language como base xD)

<?php
if( isset( $_GET['ddl'] ) ) {
echo "ddl=" . $_GET['ddl'] . "&amp;";
}
?>


ai o codigo todo ficaria assim, tendo o ? antes do inicio do PHP
<a href="?<?php if( isset( $_GET['ddl'] ) ) {echo "ddl=" . $_GET['ddl'] . "&amp;";} ?>lang=pt-br"><img src="images/bandeira_Brasil.jpg" width="16" height="16" border="0"></a>


#26 Membro offline   Deives Ícone

  • Ícone
  • Grupo: Membros
  • Posts: 172
  • Cadastrado: 15-dezembro 05

Postou 04 agosto 2008 - 09:43

Eai Dark !

Tive uns problemas, mas agora vou mexer com o código...


vlw pela ajuda... :thumbsup:

abraço !

#27 Membro offline   Cézar Fest Ícone

  • Cézar Ayran
  • Ícone
  • Grupo: Membros
  • Posts: 7
  • Cadastrado: 13-novembro 05

Ícone  Postou 08 outubro 2008 - 21:14

ae pessoas deixei o meu através do POST mesmo pra receber os dados e fiz um código que funciona da seguinte maneira:


<form action="" method="post">
<input type="hidden" name="lang" value="pt">
<input type="image" src="paises/br-t.jpg" name="submit">
</form>
<form action="" method="post">
<input type="hidden" name="lang" value="es">

<input type="image" src="paises/es-t.jpg" name="submit">
</form>



o problema foi no navegador... no Mozila ele não detecta a linguagem ´padrão o PT então ele abre e não exibe nenhum texto agoar se clciar na bandeira ele passa a exibir, que co´digo devo adicionar pra que ele exiba a linguagem padrão caso o usuário não a selecione no Mozila?


<?php

$default = "pt"; // padrão será o portugues...



if( isset( $_POST['lang'] ) )

{

require $_POST['lang'] . ".php";

setcookie("guardaIdioma", $_POST['lang'], time()+3600*24*30, '/'); // cookie com tempo de expiração de 1 mes

}

else

if( isset($_COOKIE["guardaIdioma"]) )

{

require $_COOKIE["guardaIdioma"] . ".php";

}

else

if (!isset($_SERVER['HTTP_ACCEPT_LANGUAGE']))

{

require $default .".php";

}

else

{

$idioma = $_SERVER['HTTP_ACCEPT_LANGUAGE'];

$idioma = substr($idioma,0,2); // separando o idioma....

if( ( $idioma == "pt") or ( $idioma == "es") or ( $idioma == "en") ) // verificando se é um idioma válido

{

require $idioma . ".php";

}

else

{

require $default . ".php";

}

}

ob_end_flush();

?>


aqui o teste: www.plugmania.com.br/idioma.php

#28 Membro offline   juliodiz Ícone

  • Ícone
  • Grupo: Membros
  • Posts: 12
  • Cadastrado: 11-novembro 08

Postou 20 dezembro 2008 - 19:53

O que que tem de errado no meu codigo?

Aqui eu não consigo mudar o idioma... ele só fica no portugues...

<?php

require "setidioma.php";

?>

<a href='?lang=' ><img src="../img/portugues.png" alt="Portugues" width="30" height="30" style="border-width: 0px;"></a>
<a href='?lang=es' ><img src="../img/spanol.png" alt="Espanhol" width="30" height="30" style="border-width: 0px;"></a>
<a href='?lang=en'><img src="../img/english.png" alt="Ingles" width="30" height="30" style="border-width: 0px;"></a>
<a href='?lang=fr'><img src="../img/france.png" alt="Frances" width="30" height="30" style="border-width: 0px;"></a>
<a href='?lang=ale'><img src="../img/alemanha.png" alt="Alemao" width="30" height="30" style="border-width: 0px;"></a>


<?php echo $texto['titulo']; ?>


e no setidioma.php

<?php

ob_start();
$default = "pt"; // padrão será o portugues...

if( isset( $_POST['trocaIdioma'] ) )
{
require $_POST['trocaIdioma'] . ".php";
setcookie("guardaIdioma", $_POST['trocaIdioma'], time()+3600*24*30, '/'); // cookie com tempo de expiração de 1 mes
}
else
if( isset($_COOKIE["guardaIdioma"]) )
{
require $_COOKIE["guardaIdioma"] . ".php";
}
else
if (!isset($_SERVER['HTTP_ACCEPT_LANGUAGE']))
{
require $default .".php";
}
else
{
$idioma = $_SERVER['HTTP_ACCEPT_LANGUAGE'];
$idioma = substr($idioma,0,2); // separando o idioma....
if( ( $idioma == "pt") or ( $idioma == "es") or ( $idioma == "en") ) // verificando se é um idioma válido
{
require $idioma . ".php";
}
else
{
require $default . ".php";
}
}
ob_end_flush();
?>

#29 Membro offline   DarkDragonLord Ícone

  • raphaelddl.com
  • Ícone
  • Grupo: Membros
  • Posts: 128
  • Cadastrado: 18-abril 05
  • Localização:Belo Horizonte/MG

Postou 30 dezembro 2008 - 14:00

Julio, você colocou $texto['titulo'] = "textoqualquer"; em todos os arquivos de lingua? (pt.php, es.php)
Outra coisa.

Com o setidioma.php que você tá, você só vai conseguir chamar pt, es e en.
olhe a seguinte parte
if( ( $idioma == "pt") or ( $idioma == "es") or ( $idioma == "en") ) // verificando se é um idioma válido

nesse caso, você tem que adicionar os outros

if( ( $idioma == "pt") or ( $idioma == "es") or ( $idioma == "en") or ( $idioma == "outra") or ( $idioma == "outra") or ( $idioma == "outra") ) // verificando se é um idioma válido


Entendeu?




E mais uma vez, agradeço ao Cerrito, pois sem esse codigo eu nao teria aprendido PHP, pq ese codigo que eu estudei como exemplo e até hoje o uso, atualizo e melhoro :)

#30 Membro offline   juliodiz Ícone

  • Ícone
  • Grupo: Membros
  • Posts: 12
  • Cadastrado: 11-novembro 08

Postou 30 dezembro 2008 - 15:59

Ver postDarkDragonLord, em 30/12/2008 - 15:00, disse:

Julio, você colocou $texto['titulo'] = "textoqualquer"; em todos os arquivos de lingua? (pt.php, es.php)
Outra coisa.

Com o setidioma.php que você tá, você só vai conseguir chamar pt, es e en.
olhe a seguinte parte
if( ( $idioma == "pt") or ( $idioma == "es") or ( $idioma == "en") ) // verificando se é um idioma válido

nesse caso, você tem que adicionar os outros

if( ( $idioma == "pt") or ( $idioma == "es") or ( $idioma == "en") or ( $idioma == "outra") or ( $idioma == "outra") or ( $idioma == "outra") ) // verificando se é um idioma válido


Entendeu?




E mais uma vez, agradeço ao Cerrito, pois sem esse codigo eu nao teria aprendido PHP, pq ese codigo que eu estudei como exemplo e até hoje o uso, atualizo e melhoro :)


Entendi mas mesmo com esses 3 idiomas eu nao consigo chamar o em ingles e espanhol

eu coloquei $texto['titulo'] = "textoqualquer" esse textoqualquer diferentes em todos os idiomas mas ele só mostra o em portugues... o em ingles e espanhol ele nao mostra.

#31 Membro offline   juliodiz Ícone

  • Ícone
  • Grupo: Membros
  • Posts: 12
  • Cadastrado: 11-novembro 08

Postou 30 dezembro 2008 - 16:02

Ver postDarkDragonLord, em 30/12/2008 - 15:00, disse:

Julio, você colocou $texto['titulo'] = "textoqualquer"; em todos os arquivos de lingua? (pt.php, es.php)
Outra coisa.

Com o setidioma.php que você tá, você só vai conseguir chamar pt, es e en.
olhe a seguinte parte
if( ( $idioma == "pt") or ( $idioma == "es") or ( $idioma == "en") ) // verificando se é um idioma válido

nesse caso, você tem que adicionar os outros

if( ( $idioma == "pt") or ( $idioma == "es") or ( $idioma == "en") or ( $idioma == "outra") or ( $idioma == "outra") or ( $idioma == "outra") ) // verificando se é um idioma válido


Entendeu?




E mais uma vez, agradeço ao Cerrito, pois sem esse codigo eu nao teria aprendido PHP, pq ese codigo que eu estudei como exemplo e até hoje o uso, atualizo e melhoro :)


Entendi mas mesmo com esses 3 idiomas eu nao consigo chamar o em ingles e espanhol

eu coloquei $texto['titulo'] = "textoqualquer" esse textoqualquer diferentes em todos os idiomas mas ele só mostra o em portugues... o em ingles e espanhol ele nao mostra.

#32 Membro offline   juliodiz Ícone

  • Ícone
  • Grupo: Membros
  • Posts: 12
  • Cadastrado: 11-novembro 08

Postou 30 dezembro 2008 - 16:02

Ver postDarkDragonLord, em 30/12/2008 - 15:00, disse:

Julio, você colocou $texto['titulo'] = "textoqualquer"; em todos os arquivos de lingua? (pt.php, es.php)
Outra coisa.

Com o setidioma.php que você tá, você só vai conseguir chamar pt, es e en.
olhe a seguinte parte
if( ( $idioma == "pt") or ( $idioma == "es") or ( $idioma == "en") ) // verificando se é um idioma válido

nesse caso, você tem que adicionar os outros

if( ( $idioma == "pt") or ( $idioma == "es") or ( $idioma == "en") or ( $idioma == "outra") or ( $idioma == "outra") or ( $idioma == "outra") ) // verificando se é um idioma válido


Entendeu?




E mais uma vez, agradeço ao Cerrito, pois sem esse codigo eu nao teria aprendido PHP, pq ese codigo que eu estudei como exemplo e até hoje o uso, atualizo e melhoro :)


Entendi mas mesmo com esses 3 idiomas eu nao consigo chamar o em ingles e espanhol

eu coloquei $texto['titulo'] = "textoqualquer" esse textoqualquer diferentes em todos os idiomas mas ele só mostra o em portugues... o em ingles e espanhol ele nao mostra.

#33 Membro offline   juliodiz Ícone

  • Ícone
  • Grupo: Membros
  • Posts: 12
  • Cadastrado: 11-novembro 08

Postou 30 dezembro 2008 - 16:03

Ver postDarkDragonLord, em 30/12/2008 - 15:00, disse:

Julio, você colocou $texto['titulo'] = "textoqualquer"; em todos os arquivos de lingua? (pt.php, es.php)
Outra coisa.

Com o setidioma.php que você tá, você só vai conseguir chamar pt, es e en.
olhe a seguinte parte
if( ( $idioma == "pt") or ( $idioma == "es") or ( $idioma == "en") ) // verificando se é um idioma válido

nesse caso, você tem que adicionar os outros

if( ( $idioma == "pt") or ( $idioma == "es") or ( $idioma == "en") or ( $idioma == "outra") or ( $idioma == "outra") or ( $idioma == "outra") ) // verificando se é um idioma válido


Entendeu?




E mais uma vez, agradeço ao Cerrito, pois sem esse codigo eu nao teria aprendido PHP, pq ese codigo que eu estudei como exemplo e até hoje o uso, atualizo e melhoro :)


Entendi mas mesmo com esses 3 idiomas eu nao consigo chamar o em ingles e espanhol

eu coloquei $texto['titulo'] = "textoqualquer" esse textoqualquer diferentes em todos os idiomas mas ele só mostra o em portugues... o em ingles e espanhol ele nao mostra.

#34 Membro offline   juliodiz Ícone

  • Ícone
  • Grupo: Membros
  • Posts: 12
  • Cadastrado: 11-novembro 08

Postou 30 dezembro 2008 - 16:03

:natal_tongue:

Ver postDarkDragonLord, em 30/12/2008 - 15:00, disse:

Julio, você colocou $texto['titulo'] = "textoqualquer"; em todos os arquivos de lingua? (pt.php, es.php)
Outra coisa.

Com o setidioma.php que você tá, você só vai conseguir chamar pt, es e en.
olhe a seguinte parte
if( ( $idioma == "pt") or ( $idioma == "es") or ( $idioma == "en") ) // verificando se é um idioma válido

nesse caso, você tem que adicionar os outros

if( ( $idioma == "pt") or ( $idioma == "es") or ( $idioma == "en") or ( $idioma == "outra") or ( $idioma == "outra") or ( $idioma == "outra") ) // verificando se é um idioma válido


Entendeu?




E mais uma vez, agradeço ao Cerrito, pois sem esse codigo eu nao teria aprendido PHP, pq ese codigo que eu estudei como exemplo e até hoje o uso, atualizo e melhoro :)


Entendi mas mesmo com esses 3 idiomas eu nao consigo chamar o em ingles e espanhol

eu coloquei $texto['titulo'] = "textoqualquer" esse textoqualquer diferentes em todos os idiomas mas ele só mostra o em portugues... o em ingles e espanhol ele nao mostra.

Sera que está errado a maneira como mudo o idioma?

#35 Membro offline   juliodiz Ícone

  • Ícone
  • Grupo: Membros
  • Posts: 12
  • Cadastrado: 11-novembro 08

Postou 30 dezembro 2008 - 16:07

:natal_tongue:

Ver postDarkDragonLord, em 30/12/2008 - 15:00, disse:

Julio, você colocou $texto['titulo'] = "textoqualquer"; em todos os arquivos de lingua? (pt.php, es.php)
Outra coisa.

Com o setidioma.php que você tá, você só vai conseguir chamar pt, es e en.
olhe a seguinte parte
if( ( $idioma == "pt") or ( $idioma == "es") or ( $idioma == "en") ) // verificando se é um idioma válido

nesse caso, você tem que adicionar os outros

if( ( $idioma == "pt") or ( $idioma == "es") or ( $idioma == "en") or ( $idioma == "outra") or ( $idioma == "outra") or ( $idioma == "outra") ) // verificando se é um idioma válido


Entendeu?




E mais uma vez, agradeço ao Cerrito, pois sem esse codigo eu nao teria aprendido PHP, pq ese codigo que eu estudei como exemplo e até hoje o uso, atualizo e melhoro :)


Entendi mas mesmo com esses 3 idiomas eu nao consigo chamar o em ingles e espanhol

eu coloquei $texto['titulo'] = "textoqualquer" esse textoqualquer diferentes em todos os idiomas mas ele só mostra o em portugues... o em ingles e espanhol ele nao mostra.

Sera que está errado a maneira como mudo o idioma?

#36 Membro offline   juliodiz Ícone

  • Ícone
  • Grupo: Membros
  • Posts: 12
  • Cadastrado: 11-novembro 08

Postou 30 dezembro 2008 - 16:07

:natal_tongue:

Ver postDarkDragonLord, em 30/12/2008 - 15:00, disse:

Julio, você colocou $texto['titulo'] = "textoqualquer"; em todos os arquivos de lingua? (pt.php, es.php)
Outra coisa.

Com o setidioma.php que você tá, você só vai conseguir chamar pt, es e en.
olhe a seguinte parte
if( ( $idioma == "pt") or ( $idioma == "es") or ( $idioma == "en") ) // verificando se é um idioma válido

nesse caso, você tem que adicionar os outros

if( ( $idioma == "pt") or ( $idioma == "es") or ( $idioma == "en") or ( $idioma == "outra") or ( $idioma == "outra") or ( $idioma == "outra") ) // verificando se é um idioma válido


Entendeu?




E mais uma vez, agradeço ao Cerrito, pois sem esse codigo eu nao teria aprendido PHP, pq ese codigo que eu estudei como exemplo e até hoje o uso, atualizo e melhoro :)


Entendi mas mesmo com esses 3 idiomas eu nao consigo chamar o em ingles e espanhol

eu coloquei $texto['titulo'] = "textoqualquer" esse textoqualquer diferentes em todos os idiomas mas ele só mostra o em portugues... o em ingles e espanhol ele nao mostra.

Sera que está errado a maneira como mudo o idioma?

#37 Membro offline   DarkDragonLord Ícone

  • raphaelddl.com
  • Ícone
  • Grupo: Membros
  • Posts: 128
  • Cadastrado: 18-abril 05
  • Localização:Belo Horizonte/MG

Postou 30 dezembro 2008 - 17:04

você lembrou do ponto e virgula depois das aspas?


posta pra mim ae o codigo da pagina que você tem o menu e o en.php/pt.php?
coloca dentro da tag code, assim ó
[ code ]html aqui[ / code ]

sem os espaços, coloquei senao da pal no forum :P


by the way, ele dá alguma msg de erro ou algo assim?

#38 Membro offline   juliodiz Ícone

  • Ícone
  • Grupo: Membros
  • Posts: 12
  • Cadastrado: 11-novembro 08

Postou 30 dezembro 2008 - 19:12

Ver postDarkDragonLord, em 30/12/2008 - 18:04, disse:

você lembrou do ponto e virgula depois das aspas?


posta pra mim ae o codigo da pagina que você tem o menu e o en.php/pt.php?
coloca dentro da tag code, assim ó
[ code ]html aqui[ / code ]

sem os espaços, coloquei senao da pal no forum :P


by the way, ele dá alguma msg de erro ou algo assim?


Nenhuma mensagem de erro

igualzinho la em cima.. soh que eu estou usando assim para mudar de lingua

<a href='?lang=' ><img src="../img/portugues.png" alt="Portugues" width="30" height="30" style="border-width: 0px;"></a>
<a href='?lang=es' ><img src="../img/spanol.png" alt="Espanhol" width="30" height="30" style="border-width: 0px;"></a>
<a href='?lang=en'><img src="../img/english.png" alt="Ingles" width="30" height="30" style="border-width: 0px;"></a>
<a href='?lang=fr'><img src="../img/france.png" alt="Frances" width="30" height="30" style="border-width: 0px;"></a>
a href='?lang=ale'><img src="../img/alemanha.png" alt="Alemao" width="30" height="30" style="border-width: 0px;"></a>

 
<?php echo $texto['titulo']; ?>


Ele aparece a mensagem em portugues perfeita ...mas quando eu clico no link de espanhol ou ingles para mudar ele continua com o texto em portugues.

Acho que o erro ta no setidioma.php. Porque eu nao estou usando o post para mudar o idioma.

<?php
/******************************* BY MRS 05/06/2004 ****************************************************************************\
* *** *
* esse arquivo verifica se o usuario marcou um idioma, caso seja verdadeiro ele seta esse idioma e grava um cookei com duração de *
* um mes, para que na próxima vez ele já venha com o idioma setado... *
* caso contrário ele verifica se existe um cookie com o idioma, caso não tenha ele pega o idioma do navegador e seta esse *
* +++ *
/********************************************************************************
***************************************************** */
ob_start();
$default = "pt"; // padrão será o portugues...

if( isset( $_POST['trocaIdioma'] ) )
{
require $_POST['trocaIdioma'] . ".php";
setcookie("guardaIdioma", $_POST['trocaIdioma'], time()+3600*24*30, '/'); // cookie com tempo de expiração de 1 mes
}
else
if( isset($_COOKIE["guardaIdioma"]) )
{
require $_COOKIE["guardaIdioma"] . ".php";
}
else
if (!isset($_SERVER['HTTP_ACCEPT_LANGUAGE']))
{
require $default .".php";
}
else
{
$idioma = $_SERVER['HTTP_ACCEPT_LANGUAGE'];
$idioma = substr($idioma,0,2); // separando o idioma....
if( ( $idioma == "pt") or ( $idioma == "es") or ( $idioma == "en") ) // verificando se é um idioma válido
{
require $idioma . ".php";
}
else
{
require $default . ".php";
}
}
ob_end_flush();
?>


#39 Membro offline   DarkDragonLord Ícone

  • raphaelddl.com
  • Ícone
  • Grupo: Membros
  • Posts: 128
  • Cadastrado: 18-abril 05
  • Localização:Belo Horizonte/MG

Postou 30 dezembro 2008 - 20:52

Entendi o problema

Eu modifiquei o setidioma.php e esqueci de mostrar o novo (olhei o meu aqui)

Tirei o post, to usando get hahaha

comentei o original, o meu tá embaixo.
<?php
/******************************* BY MRS 05/06/2004 ****************************************************************************\
* *** *
* esse arquivo verifica se o usuario marcou um idioma, caso seja verdadeiro ele seta esse idioma e grava um cookei com duração de *
* um mes, para que na próxima vez ele já venha com o idioma setado... *
* caso contrário ele verifica se existe um cookie com o idioma, caso não tenha ele pega o idioma do navegador e seta esse *
* +++ *
/********************************************************************************
***************************************************** */
/*ob_start();
$default = "en"; // padrão será o ingles...

if( isset( $_POST['trocaIdioma'] ) )
{
require $_POST['trocaIdioma'] . ".php";
setcookie("guardaIdioma", $_POST['trocaIdioma'], time()+3600*24*30, '/'); // cookie com tempo de expiração de 1 mes
}
else
if( isset($_COOKIE["guardaIdioma"]) )
{
require $_COOKIE["guardaIdioma"] . ".php";
}
else
if (!isset($_SERVER['HTTP_ACCEPT_LANGUAGE']))
{
require $default .".php";
}
else
{
$idioma = $_SERVER['HTTP_ACCEPT_LANGUAGE'];
$idioma = substr($idioma,0,2); // separando o idioma....
if( ( $idioma == "pt") or ( $idioma == "en") ) // verificando se é um idioma válido
{
require $idioma . ".php";
}
else
{
require $default . ".php";
}
}
ob_end_flush();
*/



/*********************** BY RaphaelDDL...uma data aew, muito tempo..sei nao.. vamos considerar 30/12/2008 hahaaha ****************\
* *** *
* modificado pra get e ficar mais prático, chamando-o opor variavel na URL *
* +++ *
/*************************************************************** */

ob_start();
$default = "en"; // padrão será o ingles...

if( isset( $_GET['lang'] ) )
{
@require $_GET['lang'] . ".php";
setcookie("guardaIdioma", $_GET['lang'], time()+3600*24*30, '/'); // cookie com tempo de expiração de 1 mes
}
else
if( isset($_COOKIE["guardaIdioma"]) )
{
require $_COOKIE["guardaIdioma"] . ".php";
}
else
if (!isset($_SERVER['HTTP_ACCEPT_LANGUAGE']))
{
require $default .".php";
}
else
{
$idioma = $_SERVER['HTTP_ACCEPT_LANGUAGE'];
$idioma = substr($idioma,0,2); // separando o idioma....
if( ( $idioma == "pt") or ( $idioma == "en") ) // verificando se é um idioma válido
{
require $idioma . ".php";
}
else
{
require $default . ".php";
}
}
ob_end_flush();
?>


#40 Membro offline   juliodiz Ícone

  • Ícone
  • Grupo: Membros
  • Posts: 12
  • Cadastrado: 11-novembro 08

Postou 31 dezembro 2008 - 15:14

Agora funcionou bem!

Eu cheguei a mandar um email para voce pedindo uma pagina de login, sucesso e senha. E tb tem a administrativa... gostaria de um layout bonito para apresentacao no login. Como podemos negociar?

#41 Membro offline   DarkDragonLord Ícone

  • raphaelddl.com
  • Ícone
  • Grupo: Membros
  • Posts: 128
  • Cadastrado: 18-abril 05
  • Localização:Belo Horizonte/MG

Postou 01 janeiro 2009 - 20:14

Ver postjuliodiz, em 31/12/2008 - 15:14, disse:

Agora funcionou bem!

Eu cheguei a mandar um email para voce pedindo uma pagina de login, sucesso e senha. E tb tem a administrativa... gostaria de um layout bonito para apresentacao no login. Como podemos negociar?


Entendi :D

Bom, eu viajei e só tava aqui respondendo a ti pq vi que tu tava interessado :)


Voltei hoje, vou fazer aqui o orçamento e te mando, beleza :D?

#42 Membro offline   juliodiz Ícone

  • Ícone
  • Grupo: Membros
  • Posts: 12
  • Cadastrado: 11-novembro 08

Postou 14 janeiro 2009 - 11:13

você ainda nao mandou o orçamento

#43 Membro offline   rcdesign Ícone

  • RC Signs
  • Ícone
  • Grupo: Membros
  • Posts: 679
  • Cadastrado: 24-abril 03
  • Sexo:Masculino
  • Localização:Curitiba - PR

Postou 06 maio 2009 - 20:02

estou fazendo um site com 4 idiomas e comecei a gostar dessa idéia .. gostaria de colocar as páginas dos idiomas em uma pasta mas não estou conseguindo fazer funcionar.. com os idiomas na raiz dá certo mas se eu altero para as pastas abre página em branco quando tento mudar o idioma..

fiz assim:
<?php
ob_start();
$default = "lang/pt-br"; // padrão será o ingles...

if( isset( $_GET['lang'] ) )
{
@require $_GET['lang'] . ".php";
setcookie("guardaIdioma", $_GET['lang'], time()+3600*24*30, '/'); // cookie com tempo de expiração de 1 mes
}
else
if( isset($_COOKIE["guardaIdioma"]) )
{
require $_COOKIE["guardaIdioma"] . ".php";
}
else
if (!isset($_SERVER['HTTP_ACCEPT_LANGUAGE']))
{
require $default .".php";
}
else
{
$idioma = $_SERVER['HTTP_ACCEPT_LANGUAGE'];
$idioma = substr($idioma,0,2); // separando o idioma....
if( ( $idioma == "lang/pt-br") or ( $idioma == "lang/es") or ( $idioma == "lang/fr") or ( $idioma == "lang/en") ) // verificando se é um idioma válido
{
require $idioma . ".php";
}
else
{
require $default . ".php";
}
}
ob_end_flush();
?>


na verdade eu testei de outras formas para ajustar o caminho e nada funcionou e, a princípio, essa seria a mais lógica

#44 Membro offline   gersonab Ícone

  • Ícone
  • Grupo: Membros
  • Posts: 157
  • Cadastrado: 30-janeiro 06

Ícone  Postou 01 julho 2009 - 15:07

Uma dúvida ...
Esta funcionando, trocando o idioma , no entanto estou tendo este erro :

Warning: Cannot modify header information - headers already sent by (output started at c:\windows\serv-n\www\hid\index.php:1) in c:\windows\serv-n\www\hid\setidioma.php on line 8

Meu setidioma.php
<?
ob_start();
$default = "pt"; 

if( isset( $_GET['lang'] ) )
{
@require $_GET['lang'] . ".php";
setcookie("guardaIdioma", $_GET['lang'], time()+3600*24*30, '/'); // ---- LINHA 8
}
else
if( isset($_COOKIE["guardaIdioma"]) )
{
require $_COOKIE["guardaIdioma"] . ".php";
}
else
if (!isset($_SERVER['HTTP_ACCEPT_LANGUAGE']))
{
require $default .".php";
}
else
{
$idioma = $_SERVER['HTTP_ACCEPT_LANGUAGE'];
$idioma = substr($idioma,0,2); // separando o idioma....
if( ( $idioma == "pt") or ( $idioma == "en") or ( $idioma == "es") ) // verificando se é um idioma válido
{
require $idioma . ".php";
}
else
{
require $default . ".php";
}
}
ob_end_flush();
?>


minhas bandeiras ....
<a href="?<?php if( isset( $_GET['ddl'] ) ) {echo "ddl=" . $_GET['ddl'] . "&amp;";} ?>lang=pt"><img src="images/bandeira_Brasil.jpg" width="16" height="16" border="0"></a>&nbsp;&nbsp;
<a href="?<?php if( isset( $_GET['ddl'] ) ) {echo "ddl=" . $_GET['ddl'] . "&amp;";} ?>lang=es"><img src="images/bandeira_Espanha.jpg" width="16" height="16" border="0"></a>&nbsp;&nbsp;
<a href="?<?php if( isset( $_GET['ddl'] ) ) {echo "ddl=" . $_GET['ddl'] . "&amp;";} ?>lang=en"><img src="images/bandeira_USA.jpg" width="16" height="16" border="0"></a>


onde as páginas entram ...
<?php
if(isset($_GET['ddl'])) {
include "./".$_GET['ddl'].".php";
} else {
include "./principal.php";
}
?>


Ja tentei varias opções e nada ainda ... O que poderia ser ?

#45 Membro offline   formigoni Ícone

  • Adventus
  • Ícone
  • Grupo: Membros
  • Posts: 272
  • Cadastrado: 10-março 08
  • Sexo:Masculino
  • Localização:Mandaguari

Postou 02 julho 2009 - 15:26

Olá boa tarde.
Existe a possibilidade de conseguir esse script para download atualizado?
Claro, se não for contra a política do site.
Valeu e fiquem na paz.

Página 1 de 1
  • Novo tópico
  • Fechado

1 usuário(s) está(ão) lendo este tópico
0 membro(s), 1 visitante(s) e 0 membros anônimo(s)