Ver Mensaje Individual
  #1 (permalink)  
Antiguo 06/03/2012, 04:48
sergiolpm
 
Fecha de Ingreso: marzo-2012
Mensajes: 16
Antigüedad: 12 años, 1 mes
Puntos: 0
Pregunta Sesiones en php para login

Estoy creando una base de datos con php de una especia de biblioteca, para ello, en la pagina de inicio tengo que crear una pagina de logueo. por defecto, tengo un usuario creado llamado invitado, donde, al loguearse, lo manda a la pagina invitado.php. Lo que quiero hacer es que no se pueda acceder a invitado.php directamente desde la barra de direcciones sin antes haber sido logueado. Supongo que habria que hacer el uso de sesiones, pero llevo horas probando y probando y no consigo que me funcione. El código es el siguiente:

index.php:
<html>
<head>
<title>Login</title>
</head>
<body background=images.jpg bgproperties=fixed text=white link=red vlink=green alink=yellow>
<form name="form1" method="post" action="estructura.php">
<input type="submit" value="Crear estructura">
</form>
<center>
<form name="form2" method="post" action="index2.php">
<table>
<tr><td colspan="3" align="left"><h1><font face="Comic Sans MS">GESTIÓN DE BIBLIOTECA INCA GARCILASO</font></h1></td></tr>
<td align="center" rowspan=20><img src=inca.gif></td><tr height=75><td><td></tr>
<tr><td align="center"><b>Usuario:</b></td><td><input type="text" name="usuario"></td></tr>
<tr><td align="center"><b>Contraseña:</b></td><td><input type="password" name="contra"></td></tr>
<tr><td></td><td><input type="submit" value="Entrar"></td></tr>
<tr><td></td><td><a href=registro1.php>Registrarse</a></td></tr>
<tr><td></td><td><a href=regenerarpass1.php>¿Olvidaste la contraseña?</a></td></tr>
<tr height=100><td><td><td></td></tr>
</table>
</form>

</body>
</html>


Y el otro:
index2.php:

<?php
$link=mysql_connect("localhost","genius","genius") ;
mysql_select_db("proyecto",$link);
$usuario=$_REQUEST[usuario];
$cont=$_REQUEST[contra];
$contra=md5($cont);
$resultado=mysql_query("SELECT * FROM usuarios WHERE usuario='$usuario'",$link) or die(mysql_error());
if(mysql_num_rows($resultado)!=0){
while($row=mysql_fetch_array($resultado)){

if($row["usuario"]==$usuario){
if($row["contrasena"]==$contra){
if($row["usuario"]==invitado){
echo"<script language='javascript'> alert('Bienvenido');location.href='invitado.php';</script>";
}
if($row["usuario"]==root){
echo"<script language='javascript'> alert('Bienvenido');location.href='root.php';</script>";
}
}
else{
echo"<script language='javascript'> alert('La contraseña no es correcta');location.href='index.php';</script>";
}
}
}
}
else{
echo"<script language='javascript'>alert('Este usuario no existe');location.href='index.php';</script>";
}


?>



a ver si alguien me echa una mano, esto me esta desesperando, muchas gracias