Por 9.99€ al mes tendrás acceso completo a todos los cursos. Sin matrícula ni permanencia.
Ejercicio
Hacer dos páginas web cuyas secciones cabecera y botonera sean cargadas con dos includes respectivamente.
Ejercicio: Plantilla con Index
Ahora los links de la botonera enlazarán con la propia página, pasándole un parámetro que será recogido y usado en un include para que cargue el contenido correspondiente.
Para realizar este ejercicio necesitaremos 3 páginas:
- contenido1.php
- contenido2.php
- index.php
Nota:
Si quisiera evaluar si un fichero existe antes de cargarlo podría usar el método file_exists()
Idiomas
Perdiendo la página en la que estoy al pulsar en el botón de idioma
<?php
$lang = "es";
if(isset($_REQUEST["lang"])){
$lang = $_REQUEST["lang"];
}
include "langs/".$lang.".php";
$p = "contenido1";
if(isset($_REQUEST['p'])){
$p = $_REQUEST['p'];
}
?>
...
<?php include $p.".php"; ?>
…
<a href="index.php?p=contenido1">Contenido 1</a><br>
<a href="index.php?p=contenido2">Contenido 2</a>
…
<a href="index.php?lang=es">ES</a> | <a href="index.php?lang=en">EN</a>
Manteniendo la página en la que estoy
<a href="index.php?p=<?=$p ?>&lang=es">ES</a> |
<a href="index.php?p=<?=$p ?>&lang=en">EN</a>
Recordando el idioma seleccionado en la sesión
<?php
session_start();
if(isset($_REQUEST["lang"])){
$_SESSION["lang"] = $_REQUEST["lang"];
}else if(!isset($_SESSION["lang"])){
$_SESSION["lang"] = "es";
}
include "langs/".$_SESSION["lang"].".php";
Detección del idioma del navegador
<?php
session_start();
if(isset($_REQUEST["lang"])){
$_SESSION["lang"] = $_REQUEST["lang"];
}else if(!isset($_SESSION["lang"])){
$_SESSION['lang'] = substr($_SERVER['HTTP_ACCEPT_LANGUAGE'], 0, 2);
}
if(!in_array($_SESSION['lang'], array("es", "en"))){
$_SESSION['lang']="en";
}
include "langs/".$_SESSION["lang"].".php";