Holas
Cuando te conectas, el sistema te reconoce para la siguiente etapa, pero nada más.
Siquieres una autentificación y mantener al usuario validado, debes utilizar cookies y las inicio de sesiones, para entrar en el resto de las páginas.
Cuando el usuario se aburra se sale cerrando la sesión, si quiere volver debe entrar el usuario y password.
index.php Código PHP:
<html>
<head>
<title>formulario de autentificación</title>
<style>
.err_1 {font-weight:bold;color:ffffff;} .err_2 {font-weight:bold;color:red;}
</style>
</head>
<body>
<center>
<form name=users action=control.php method=POST>
<table border=0 cellspacing=0 cellpadding=0>
<tr>
<!-- falta registro -->
<td colspan=2 bgcolor=red>
<span class=err_1>Datos Incorrectos</span>
</td>
</tr>
<tr>
<td>
<?
if($_GET['errorus'] == "err_us")
{?>
<span class=err_2>User :</span>
<?}
else
{?>
User :
<?}?>
</td>
<td>
<input type=text name=usuario size=8 maxlength=20>
</td>
</tr>
<tr>
<td>
<?
if($_GET['errorpw'] == "err_pw")
{?>
<span class=err_2>Password :</span>
<?}
else
{?>
Password :
<?}?>
</td>
<td><input type=password name=claves size=8 maxlength=20></td>
</tr>
<tr><td height=25></td></tr>
<tr>
<td>
<input type=submit value=Entrar>
</td>
</tr>
</table>
</form>
</center>
</body>
</html>
control.php Código PHP:
<?
#variables de usuario y password
$user = trim($_POST['usuario']);
$clave = trim($_POST['claves']);
#variables de base de datos
$base = "usuario";
$tabla = "acceso";
#establecer conección
$conexion = mysql_connect("localhost","","") or die (mysql_error());
mysql_select_db($base,$conexion);
# Consultas SQL
$ssql = "SELECT claves FROM $tabla WHERE usuario='$user'";
#Comprobar variables completas
if($user != "" && $clave)
{
$resultado = mysql_query($ssql,$conexion);
if($rs = mysql_fetch_array($resultado))
{
# verificar accesos
if ($clave == $rs[claves])
{
// iniciar sesiones
session_start();
$_SESSION['permiso'] = "si";
// colocar cookie
setcookie("usuario",$user,time()+7776000);
setcookie("paso",$clave,time()+7776000);
?>
Ingreso exitoso, ahora sera dirigido a la pagina principal.
<br>
Espere un momento ...
<SCRIPT LANGUAGE="javascript">
location.href = "aplicacion.php";
</SCRIPT>
<?
}
else
{
header("Location: index_1.php?errorpw=err_pw&errorus=no");
}
}
else
{
header("Location: index_1.php?errorus=err_us&errorpw=no");
}
mysql_free_result($resultado);
}
else
{
header("Location: index_1.php?errorus=err_us&errorpw=err_pw");
}
mysql_close($conexion);
?>
Ahora colocamos el código de la seguridad, para comprobar el inicio de sesiones de forma correcta:
seguridad.php Código PHP:
<?
//Inicio sesión
session_start();
//comprobar autentificación
if ($_SESSION['permiso'] != "si")
{
// ir a ingreso usuario
header("Location: index.php");
// salir
exit();
}
?>
Luego las páginas que continuan:
aplicacion.php Código PHP:
<?
include ("seguridad.php");
$base = "usuario";
$tabla = "acceso";
$cook_user = $HTTP_COOKIE_VARS['usuario'];
?>
<html>
<head>
<title>Aplicación segura</title>
</head>
<body>
<h3>Página segura</h3>
<br>
<?
echo "Usuario actual : $cook_user";
?>
<br>
<a href=aplicacion_2.php>Continuar</a>
<?include("lista.txt");?>
</body>
</html>
aplicacion_2.php Código PHP:
<?
include ("seguridad.php");
$user = $HTTP_COOKIE_VARS['usuario'];
?>
<html>
<head>
<title>Aplicación segura</title>
</head>
<body>
<? echo "Usuario actual : $user"; ?>
<h3>Página segura</h3>
<br>
Continuación y termino de la sesión
<br><br>
<a href=listado.php>Enlistar Usuarios</a>
<br><br>
<a href=salir.php>Salir</a>
</body>
</html>
listado.php Código PHP:
<?
include ("seguridad.php");
#datos usuario de la cookie
$user = $HTTP_COOKIE_VARS['usuario'];
#cargar variables
$base = "usuario";
$tabla = "acceso";
#conección a base
$conexion = mysql_connect("localhost","root","");
# asignar base de datos
mysql_select_db($base,$conexion);
#selección de datos
$ssql = "SELECT * FROM $tabla";
$resultados = mysql_query($ssql,$conexion);
# ver usuario actual
echo "Usuario actual : $user";
#cabezera
?>
<br>
<table border=0 cellspacing=0 cellpadding=0>
<tr>
<td>Usuario</td><td>Password</td>
</tr>
<?
while ($row = mysql_fetch_array($resultados))
{
echo "<tr><td>".$row['usuario']."</td>";
echo "<td>".$row['claves']."</td></tr>";
}
mysql_free_result($resultados);
mysql_close($conexion);
?>
</table>
<br><br>
<a href=salir.php>Salir del Sistema</a>
Por último, el código destinado al termino de la sesión:
salir.php Código PHP:
<?
// terminar la sesión actual
session_start();
session_destroy();
// destruir cookies
setcookie('usuario','x',time()-3600);
setcookie('paso','x',time()-3600);
?>
<html>
<head>
<title>Salida del Sistema</title>
</head>
<body>
<h3>Esta fuera del sistema</h3>
</body>
Nos vemos.