rcdesign 1 Denunciar post Postado Maio 8, 2009 estou fazendo um site com 4 idiomas e comecei a gostar dessa idéia: http://forum.imasters.com.br/index.php...=124045&hl= porém eu gostaria de colocar as páginas dos idiomas em uma pasta mas não estou conseguindo fazer funcionar.. com os idiomas na raiz do site 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 Compartilhar este post Link para o post Compartilhar em outros sites
rcdesign 1 Denunciar post Postado Maio 9, 2009 foi o que eu fiz Calvin.. <?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 = "lang/pt-br"; // padrão português 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-br") or ( $idioma == "es") or ( $idioma == "fr") or ( $idioma == "en") ) // verificando se é um idioma válido { require $idioma . ".php"; } else { require $default . ".php"; } } ob_end_flush(); ?> Compartilhar este post Link para o post Compartilhar em outros sites
rcdesign 1 Denunciar post Postado Maio 9, 2009 resolvido... transferi o arquivo setidioma.php (código acima) para a pasta lang e ajustei o caminho para ela no index.. as vezes a solução está na nossa frente e a gente não vê http://forum.imasters.com.br/public/style_emoticons/default/assobiando.gif Compartilhar este post Link para o post Compartilhar em outros sites