Este post es para dar solución a uno de los problemas planteados en "Problemas que pueden surgir al recargar div contenedor". Así que os aconsejo que le hechéis un vistazo para saber de qué va la cosa.
Esta puede ser una de las soluciones. Lo primero que tenemos que hacer es guardar en formato PHP esas páginas que queremos recargar dentro de nuestro div, ya que usaremos dicho lenguaje para solucionar el problema. Antes del código html tenemos que incluir el siguiente código:
Explico un poco el código. La primera linea comprueba si no existe (!isset) la variable llamada 'primera' que a de ser recibida via POST. Si no existe quiere decir que se requiere la página desde fuera de nuestra web, entonces redirigimos al usuario (via javascript) hacia la página principal (index.html).
La segunda linea comprueba si existe (isset) dicha variable. Si existe, comprobamos si su valor es diferente (!=, significa no es igual a) a no. Si es diferente, hacemos lo mismo (llevamos al usuario a index.html). En todos los demás casos no hacemos nada, o sea se carga el código html que escribimos a continuación.
La varible 'primera' la uso como control y la tenemos que enviar desde el método load() que usamos para llamar al contenido, ya que si no, nunca veríamos el contenido que queremos recargar. Sería algo como: $('contenedor').load('index-2.php',primera:'no'). Es decir, mediante el método load() llamamos la página que queremos cargar dentro del div 'contenedor' y, a la vez, le enviamos una variable con un valor que leeremos con el código php descrito más arriba. Yo le doy el valor 'no' pero podéis usar un valor numérico o booleano. Post relacionado: leer variables con método $_GET.
Esta puede ser una de las soluciones. Lo primero que tenemos que hacer es guardar en formato PHP esas páginas que queremos recargar dentro de nuestro div, ya que usaremos dicho lenguaje para solucionar el problema. Antes del código html tenemos que incluir el siguiente código:
<?php
if (!isset($_POST['primera'])) echo "<SCRIPT>location.href='index.html';</SCRIPT>";
if (isset($_POST['primera'])){
if ($_POST['primera']!='no') {echo "<SCRIPT>location.href='index.html';</SCRIPT>";}
}
?>
if (!isset($_POST['primera'])) echo "<SCRIPT>location.href='index.html';</SCRIPT>";
if (isset($_POST['primera'])){
if ($_POST['primera']!='no') {echo "<SCRIPT>location.href='index.html';</SCRIPT>";}
}
?>
<y a partir de aquí el código html que queremos mostrar>
Explico un poco el código. La primera linea comprueba si no existe (!isset) la variable llamada 'primera' que a de ser recibida via POST. Si no existe quiere decir que se requiere la página desde fuera de nuestra web, entonces redirigimos al usuario (via javascript) hacia la página principal (index.html).
La segunda linea comprueba si existe (isset) dicha variable. Si existe, comprobamos si su valor es diferente (!=, significa no es igual a) a no. Si es diferente, hacemos lo mismo (llevamos al usuario a index.html). En todos los demás casos no hacemos nada, o sea se carga el código html que escribimos a continuación.
La varible 'primera' la uso como control y la tenemos que enviar desde el método load() que usamos para llamar al contenido, ya que si no, nunca veríamos el contenido que queremos recargar. Sería algo como: $('contenedor').load('index-2.php',primera:'no'). Es decir, mediante el método load() llamamos la página que queremos cargar dentro del div 'contenedor' y, a la vez, le enviamos una variable con un valor que leeremos con el código php descrito más arriba. Yo le doy el valor 'no' pero podéis usar un valor numérico o booleano. Post relacionado: leer variables con método $_GET.
Comentarios
Publicar un comentario