Ir para conteúdo

POWERED BY:

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

mbpp

While Loop dentro de um switch

Recommended Posts

Oi tudo bem? Espero que me possam ajudar aqui numa duvida, tenho um scrip que faz a gestão das linguas do meu website, mas agora estou tornando ele dinamico, mas não estou a conseguir o fazer. deixo abaixo do que prentendo.

 

O que pretendo é trazer os registos das linguas que existem na minha tabela, a partir daí terei que criar um fetch_array loop e meter no meu switch, mas não consigo. Espero que possam ajudar a melhor forma de o fazer.

 

common.php (Gestão das linguas)

$sql_lang = "SELECT * FROM languages";
            $consulta_lang = mysql_query($sql_lang);
            while ($mostrar_lang = mysql_fetch_array($consulta_lang)) {  
            $file_name = $mostrar_lang['file_name']; //ex:"lang.pt.php" 
            $cod_lang = $mostrar_lang['cod_lang']; //ex:"pt" 
            
            <Codigo que traz do loop>

        }


switch ($lang) {
// loop aqui
  case 'pt':
  $lang_file = 'lang.pt.php';
  break;

  case 'en':
  $lang_file = 'lang.en.php';
  break;
//loop acaba aqui
  default:
  $lang_file = 'lang.en.php';

}

include_once 'languages/'.$lang_file;

Compartilhar este post


Link para o post
Compartilhar em outros sites

não precisa usar switch, até porque você não terá a lista de idiomas da base de dados.

 

Faça um if dentro do while, onde está <Codigo que traz do loop>.

Verifique se $lang é igual a $cod_lang. Se for, execute o que precisa e faça um break.

Compartilhar este post


Link para o post
Compartilhar em outros sites

não precisa usar switch, até porque você não terá a lista de idiomas da base de dados.

 

Faça um if dentro do while, onde está <Codigo que traz do loop>.

Verifique se $lang é igual a $cod_lang. Se for, execute o que precisa e faça um break.

 

Faz isso!

Compartilhar este post


Link para o post
Compartilhar em outros sites

não precisa usar switch, até porque você não terá a lista de idiomas da base de dados.

 

Faça um if dentro do while, onde está <Codigo que traz do loop>.

Verifique se $lang é igual a $cod_lang. Se for, execute o que precisa e faça um break.

Obrigado, estava a fazer isso exactamente mas por alguma razao a lingua noa batia certo, e vi que o que faltava era um break, mas não entendi porque foi preciso o break, pk foi necessario? foi por causa de estar dentro de um while loop para saltar fora?

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.