Nuestros Cursos de Programación Web en Vídeo!

Aprende a hacer paginas web desde casa con nuestros cursos online de diseño y desarrollo web. La mitad de los cursos es totalmente gratuita, anímate a empezar el curso que elijas gratis y después decide si quieres suscribirte.

Ver el curso mas reciente

cursos.datoweb.com

Sistema multi idioma en php

Aqui les dejo un script bastante util para crear un sistema multi idioma en php.

creamos el archivo lang.php
<?php 

session_start(); 
// Comprobamos la variable get
if (@$_GET["idioma"]) { 
switch ($_GET["idioma"]) {
// español
case 'es':
$_SESSION["idioma"]=$_GET["idioma"]; 
break;
// ingles
case 'en':
$_SESSION["idioma"]=$_GET["idioma"]; 
break;
// si no existe lo ponemos en español
default:
$_SESSION["idioma"]="es"; 
break;
}
} elseif (!$_SESSION["idioma"]) { 
// Si el get no existe definimos el español
$_SESSION["idioma"]="es"; 
}

// incluimos el idioma con las definiciones 
include("".$_SESSION["idioma"].".php"); 

?> 
Seguimos creando los archivos de idioma, en este ejemplp crearemos español e ingles

es.php
<?php  

$menu1="inicio";

$menu2="blog";

$menu3="miembros";

$menu4="registrate";

$menu5="contacto";

?>

en.php
<?php

$menu1="home";

$menu2="blog";

$menu3="members";

$menu4="register";

$menu5="contact";

?


Para mostrar un cada texto generamos un echo
<?php echo $menu1; ?>

Y creamos los links para cambiar de idioma con
// LINK IDIOMA ESPAÑOL
index.php?idioma=es

// LINK IDIOMA INGLES
index.php?idioma=en
espero que les sea util.
Editado
5
Puntos
4
Resp
683
Visitas
Por zapikero hace 15 meses
Avanzado offline

Respuesta #1

muy buen aporte, si señor!!
1
Puntos
Por alber hace 15 meses
Moderador offline

Respuesta #2

tengo un problema me da error he creado el archivo lang.php y depues los siguientes archivo es.php y en.php, pero de da error a la hora de llamarlo <?php echo $menu1; ?>

<b>Notice</b>: Undefined variable: menu1 in <b>C:\xampp\htdocs\Classiweb\index.php</b> on line <b>29</b><br />
0
Puntos
Por Dannus hace 14 meses
Avanzado offline

Respuesta #3

soluccionado, gracias un error mio :)
0
Puntos
Por Dannus hace 14 meses
Avanzado offline

Respuesta #4

lo unico que cambiaría del codigo para mejor funcionamiento
// esta linea:
} elseif (!$_SESSION["idioma"]) { 

y la pondría así:
} else if (!isset($_SESSION["idioma"])){
1
Puntos
Por Dannus hace 14 meses
Avanzado offline