Index
Hola, al parecer el problema persiste pero me he dado cuenta que el problema va desde
la página de aplicación.php el usuario hasta aquí llega pero al momento de que llama a seguridad.php
esta lo reenvía a index.php. Al parecer la variable "auntentifiacado" no esta grabando el usuario
ya que llega vacía hasta seguridad.php
Te agradezco por tu ayuda.
Saludos
Dario
-*******index.php******pagina principal
<html>
<head>
<title>Autentificación PHP</title>
</head>
<body>
<h1>Autentificación PHP</h1>
<form action="control.php" method="POST">
<table align="center" width="225" cellspacing="2" cellpadding="2" border="0">
<tr>
<td colspan="2" align="center"
<?if ($_GET["errorusuario"]=="si"){?>
bgcolor=red><span style="color:ffffff"><b>Datos incorrectos</b></span>
<?}else{?>
bgcolor=#cccccc>Introduce tu clave de acceso
<?}?></td>
</tr>
<tr>
<td align="right">USER:</td>
<td><input type="Text" name="usuario" size="8" maxlength="50"></td>
</tr>
<tr>
<td align="right">PASSWD:</td>
<td><input type="password" name="contrasena" size="8" maxlength="50"></td>
</tr>
<tr>
<td colspan="2" align="center"><input type="Submit" value="ENTRAR"></td>
</tr>
</table>
</form>
<br>
<br>
</body>
</html>
*******Aqui verifico el que el usuario exista en la bd control.php***********
<?
//conecto con la base de datos
$conn = mysql_connect("localhost","root","");
//selecciono la BBDD
mysql_select_db("servicio",$conn);
//Sentencia SQL para buscar un usuario con esos datos
$ssql = "SELECT * FROM acceso WHERE login='$usuario' and password='$contrasena'";
//Ejecuto la sentencia
$rs = mysql_query($ssql,$conn);
//vemos si el usuario y contraseña es váildo
//si la ejecución de la sentencia SQL nos da algún resultado
//es que si que existe esa conbinación usuario/contraseña
if (mysql_num_rows($rs)!=0){
//usuario y contraseña válidos
//defino una sesion y guardo datos
session_start();
$autentificado = "SI";
session_register("autentificado");
header ("Location: aplicacion.php");
}else {
//si no existe le mando otra vez a la portada
header("Location: index.php?errorusuario=si");
}
mysql_free_result($rs);
mysql_close($conn);
?>
*************seguridad.php*****************
<?
session_start();
session_register("autentificado");
if ($_SESSION["autentificado"] != "SI") {
header("Location: index.php");
}
?>
***************aplicacion.php ***************
?include ("seguridad.php");?>
<html>
<head>
<title>Aplicación segura</title>
</head>
<body>
<h1>Si estás aquí es que te has autentificado</h1>
<br>
----
<br>
Aplicación segura
<br>
----
<br>
<br>
<a href="salir.php">Salir</a>
</body>
</html>
la página de aplicación.php el usuario hasta aquí llega pero al momento de que llama a seguridad.php
esta lo reenvía a index.php. Al parecer la variable "auntentifiacado" no esta grabando el usuario
ya que llega vacía hasta seguridad.php
Te agradezco por tu ayuda.
Saludos
Dario
-*******index.php******pagina principal
<html>
<head>
<title>Autentificación PHP</title>
</head>
<body>
<h1>Autentificación PHP</h1>
<form action="control.php" method="POST">
<table align="center" width="225" cellspacing="2" cellpadding="2" border="0">
<tr>
<td colspan="2" align="center"
<?if ($_GET["errorusuario"]=="si"){?>
bgcolor=red><span style="color:ffffff"><b>Datos incorrectos</b></span>
<?}else{?>
bgcolor=#cccccc>Introduce tu clave de acceso
<?}?></td>
</tr>
<tr>
<td align="right">USER:</td>
<td><input type="Text" name="usuario" size="8" maxlength="50"></td>
</tr>
<tr>
<td align="right">PASSWD:</td>
<td><input type="password" name="contrasena" size="8" maxlength="50"></td>
</tr>
<tr>
<td colspan="2" align="center"><input type="Submit" value="ENTRAR"></td>
</tr>
</table>
</form>
<br>
<br>
</body>
</html>
*******Aqui verifico el que el usuario exista en la bd control.php***********
<?
//conecto con la base de datos
$conn = mysql_connect("localhost","root","");
//selecciono la BBDD
mysql_select_db("servicio",$conn);
//Sentencia SQL para buscar un usuario con esos datos
$ssql = "SELECT * FROM acceso WHERE login='$usuario' and password='$contrasena'";
//Ejecuto la sentencia
$rs = mysql_query($ssql,$conn);
//vemos si el usuario y contraseña es váildo
//si la ejecución de la sentencia SQL nos da algún resultado
//es que si que existe esa conbinación usuario/contraseña
if (mysql_num_rows($rs)!=0){
//usuario y contraseña válidos
//defino una sesion y guardo datos
session_start();
$autentificado = "SI";
session_register("autentificado");
header ("Location: aplicacion.php");
}else {
//si no existe le mando otra vez a la portada
header("Location: index.php?errorusuario=si");
}
mysql_free_result($rs);
mysql_close($conn);
?>
*************seguridad.php*****************
<?
session_start();
session_register("autentificado");
if ($_SESSION["autentificado"] != "SI") {
header("Location: index.php");
}
?>
***************aplicacion.php ***************
?include ("seguridad.php");?>
<html>
<head>
<title>Aplicación segura</title>
</head>
<body>
<h1>Si estás aquí es que te has autentificado</h1>
<br>
----
<br>
Aplicación segura
<br>
----
<br>
<br>
<a href="salir.php">Salir</a>
</body>
</html>
1 respuesta
Respuesta de choogal
1