Ver Mensaje Individual
  #6 (permalink)  
Antiguo 11/12/2013, 15:09
webankenovi
Invitado
 
Mensajes: n/a
Puntos:
Respuesta: php idioma: cómo ocultar/mostrar botón de idioma

Es muy sencillo lo que planteas basandome en el script de @phoneval y modificandolo un poco por si en un futuro introduces mas idiomas te sea mas facil y ademas te lo he dividido, por una parte resolvemos todo sobre el idioma, por otro lado la vista del boton

Código PHP:
Ver original
  1. <?php
  2.  
  3. // verificamos si existe la variable y si no es nula,false,etc .. .  y si solo contiene letras
  4. // de lo contrario redirecionamos con la variable correcta y por defecto el lenguaje 'es'
  5. // aunque no exista la variable o esta sea incorrecta , esta se creara automaticamente.
  6.  
  7. if( ! isset($_GET['lang']) || empty($_GET['lang']) || ! ctype_alpha($_GET['lang']) ) // ctype validacion solo valido letras
  8. {
  9.     header('location:index.php?lang=es');
  10.     exit();
  11. }
  12.  
  13.  
  14. switch(strtolower($_GET['lang'])) // strtolower convierte el string en minusculas
  15. // aunque en la url se escriba en mayusculas lang=ES este la detectara como valido , sin convertir a minusculas lang=ES te daria fallo
  16. // de esta forma daremos como valido lang=es y lang=ES
  17.  
  18. {
  19.     case 'es':
  20.     $lang = 'es';
  21.     break;
  22.  
  23.     case 'en':
  24.     $lang= 'en';
  25.     break;
  26.  
  27.     // si no existe el idioma redireccionamos con el lenguaje por defecto
  28.     default:
  29.     header('location:index.php?lang=es');
  30.     exit();
  31. }
  32.  
  33.  
  34. include_once 'languages/lang.'.$lang.'.php';
  35.  
  36.  
  37. // view
  38.  
  39.  
  40.     if( $lang === 'es' )
  41.     {
  42.         echo  '<li class="language en"> <a href="index.php?lang=en">'.$lang['MENU_EN_FULL'].'</a> </li>';
  43.     }
  44.     elseif( $lang === 'en' )
  45.     {
  46.         echo '<li class="language es"> <a href="index.php?lang=es">'.$lang['MENU_ES_FULL'].'</a> </li>';
  47.     }
  48.     else
  49.     {
  50.         echo 'error';
  51.     }
  52.  
  53.  
  54. ?>

es un ejemplo ahora amoldalo a tu script , lo de modificar ?lang=es tambien se puede hacer con .htaccess investiga sobre ello y conseguiras cambiar de dominio?lang=es a dominio/es

Última edición por webankenovi; 11/12/2013 a las 17:04