Cita:
Iniciado por nolose
Hola amigos. Tengo un problema que ronda mi cabeza.
He creado un sistema de autentificación, que consiste en buscar login y pass en una BD y si coinciden que te cree una variable de sesión con el parámetro = a True.
Si el login es correcto, te da acceso a la parte privada de la web, pero el problema es que si uno es avispado, y empieza a escribir urls pues le mete en las partes privadas.
http://web.com/index.php?sec=6 http://web.com/index.php?sec=7 http://web.com/index.php?sec=8
etc.
Como toda mi web se carga en un switch principal, pensé en bloquearlo ahí mismo poniéndole una condición if (como puse en las urls de ejemplo anteriores), pero también se puede acceder presidiendo del switch (como muestro a continuacion).
http://web.com/productos.php http://web.com/carrito.php
etc.
Tengo que poner un control (un if que compruebe la variable de sesión) en cada una de las paginas privadas??? O hay alguna otra forma??. Gracias!!
si utilizas sessiones puedes poner algo asi:
Código PHP:
<?php session_start();
if (isset($_SESSION['SESS_USUARIO']))
{
echo "Bienvenido usted esta conectado.";
echo "<form action='salir.php' method='post'>
<tr>
<th><input type='submit' value='cerrar sesion'></tr>
</tr>
</form>";
}
else {
include('mensaje_usuario_noconectado.php');
echo "<b>no estas conectado no puedes ver esta pagina</b>";
}
?>
en el ejemplo te he puesto un include por que es lo que uso yo para incluir una pagina de error , por que dentro del
echo" " no podia meter codigo php, auque no es necesario si solo quieres mostrar un texto como en el codigo que te he puesto:
echo "<b>no estas conectado no puedes ver esta pagina</b>";
saludos