Cómo ocultar una página de alguien que conoce la URL

El problema del que voy a hablarte en este post es el siguiente:

Estoy haciendo un sistema para validar las personas que ingresan a un modulo especifico.
El sistema solicita una clave de acceso que yo les genero, por ejemplo la página del formulario es el index.html y cuando completan e introducen la clave correcta los lleva a view.html, el problema está en que si una persona pone en la url directamente view.html, pueden ingresar sin pasar por el formulario.
Como puede hacer para si alguien conoce la URL view.html, al ingresarla en el navegador lo redirija al index.html

La solución a este problema puede pensarse como la solución a dos sub-problemas:

Cómo saber si un visitante pasó antes por una página de tu sitio

Una forma de saber si un usuario ha visitado o no una página de tu sitio antes de llegar a la actual (En este caso view.html) es utilizar algún tipo de marca.

La implementación más sencilla es utilizar el mecanismo de sesiones que provee PHP.

Al hacerlo de esta forma te garantizas que la información acompañe al visitante a lo largo de todo su recorrido.

El uso es muy simple, sólo tienes que escribir algo como:

<?php

session_start();
$_SESSION['paso_por_index'] = true;

Al comienzo del archivo que responde a la URI /index.html

Cómo redireccionar a un visitante no autorizado

Luego, el archivo que quieras ocultar debe comenzar con algo como:

<?php

session_start();

if (!array_key_exists('paso_por_index', $_SESSION)) {
   header('Location: index.html');
   die;
}

De esta forma, si la marca no está colocada el script entenderá que el usuario no ha pasado por index.html al llegar a view.html y, en consecuencia, lo redireccionará a la página inicial.

mchojrin

¿Te quedó alguna duda? Publica aca tu pregunta

Este sitio usa Akismet para reducir el spam. Aprende cómo se procesan los datos de tus comentarios.

A %d blogueros les gusta esto: