Este es el código que tengo en Autentificator:
Formulario (index.php) Código PHP:
<html>
<title>Área de Administración - [url]www.fiestasatope.com[/url]</title>
<style type="text/css">
<!--
.botones { font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 9pt; color: #FFFFFF; background-color: #0099FF; border-color: #000000 ; border-top-width: 1pix; border-right-width: 1pix; border-bottom-width: 1pix; border-left-width: 1pix}
.imputbox { font-size: 10pt; color: #000099; background-color: #CCFFCC; font-family: Verdana, Arial, Helvetica, sans-serif; border: 1pix #000000 solid; border-color: #000000 solid; font-weight: normal}
-->
</style>
<body bgcolor="#FFFFFF">
<span class="botones"></span><span class="imputbox"></span>
<br><br><br>
<table width="250" border="1" cellspacing="0" cellpadding="0" align="center" bordercolor="#0099FF">
<tr>
<td>
<table width=100% border=0 align="center" cellpadding="0" cellspacing="0" bordercolor="#009999" bgcolor="#CCFFCC">
<form action="aut_verifica.php" method="post">
<tr bgcolor="#0099FF">
<td colspan="2" height="45">
<div align="center"><font face="Arial" color="#FFFFFF" size=2><b>Identificación
Usuarios<br><font color="#FFFF00">[url]www.fiestasatope.com[/url]</b></font></div>
</td>
</tr>
<tr>
<td colspan="2">
<div align="center">
<table width="100%" border="0" cellspacing="0" cellpadding="5">
<tr valign="middle">
<td colspan="2" height="30">
<div align="center">
<?
// Mostrar error de Autentificación.
include ("aut_mensaje_error.inc.php");
if (isset($error_login)){
echo "<font face='Verdana, Arial, Helvetica, sans-serif' size='1' color='#FF0000'>Error: $error_login_ms[$error_login]";
}
?>
</div>
</td>
</tr>
<tr>
<td width="39%">
<div align="right"><font face="Verdana, Arial, Helvetica, sans-serif" size="2">Usuario
: </font></div>
</td>
<td width="61%">
<div align="left">
<input type="text" name="user" size="15" class="imputbox">
</div>
</td>
</tr>
<tr>
<td width="39%">
<div align="right"><font face="Verdana, Arial, Helvetica, sans-serif" size="2">Password
: </font></div>
</td>
<td width="61%">
<div align="left">
<input type="password" name="pass" size="15" class="imputbox">
</div>
</td>
</tr>
</table>
</div>
</td>
</tr>
<tr valign="middle">
<td colspan="2" height="50">
<div align="center"><font face="Arial" color=black size=2>
<input name=submit type=submit value=" Entrar " class="botones">
</font></div>
</td>
</tr>
</form>
</table>
</td>
</tr>
</table>
<BR><center><a class="enlaceazul" href="http://www.fiestasatope.com">VOLVER A PRINCIPAL</A></center>
</body>
</html>
acceso (pag1-restringida) Código PHP:
<?
require("aut_verifica.php");
require("utilidadesveri.php");
$nivel_acceso=10; // Nivel de acceso para esta página.
// se chequea si el usuario tiene un nivel inferior
// al del nivel de acceso definido para esta página.
// Si no es correcto, se manda a la página que lo llamo con
// la variable de $error_login definida con el nº de error segun el array de
// aut_mensaje_error.inc.php
if ($nivel_acceso < $HTTP_SESSION_VARS['usuario_nivel']){
header ("Location: $redir?error_login=5");
exit;
}
?>
<html>
<head>
<title>Página con acceso restringido</title>
</head>
<body>
<p><center><font size="4" color="blue"><b>Acceso Autorizado</b></font></center></p>
<br>
<TABLE width="500" border="1" cellspacing="0" cellpadding="4" bordercolor="#CCCCCC" align="center">
<tr>
<td colspan="4" bgcolor="#0099FF">
<div align="center"><font face="Verdana, Arial, Helvetica, sans-serif" size="2"><b><font color="#FFFFFF">ENTRADA ZONA DE SEGURIDAD</font></b></font>
</div>
</td>
</tr>
<tr bgcolor="#00CCCC">
<td width="14%">
<div align="center"><b><font face="Verdana, Arial, Helvetica, sans-serif" size="2" color="#FFFFFF">ID
</font></b></div>
</td>
<td width="30%">
<div align="center"><b><font face="Verdana, Arial, Helvetica, sans-serif" size="2" color="#FFFFFF">Usuario
</font></b></div>
</td>
<td width="24%">
<div align="center"><b><font face="Verdana, Arial, Helvetica, sans-serif" size="2" color="#FFFFFF">Nivel
</font></b></div>
</td>
</tr>
<TR>
<td>
<? echo $HTTP_SESSION_VARS['usuario_id'] ?>
</td>
<td>
<? echo $HTTP_SESSION_VARS['usuario_login'] ?>
</td>
<td>
<? echo $HTTP_SESSION_VARS['usuario_nivel'] ?>
</td>
</TABLE>
<? pie_autentificacion () ?>
</body>
</html>
Verificación (aut_verifica.php) Código PHP:
<?
// Motor autentificación usuarios.
// Cargar datos conexion y otras variables.
require ("aut_config.inc.php");
// chequear página que lo llama para devolver errores a dicha página.
$url = explode("?",$HTTP_REFERER);
$pag_referida=$url[0];
$redir=$pag_referida;
// chequear si se llama directo al script.
if ($HTTP_REFERER == ""){
die ("<center><font size=4 color=blue>Error cod.:1 - Acceso incorrecto!<BR><BR> Debes rellenar la <a href=http://www.fiestasatope.com/index.php><b>Página de Identificación</b></a></font></center>");
exit;
}
// Chequeamos si se está autentificandose un usuario por medio del formulario
if (isset($user) && isset($pass)) {
$db_conexion= mysql_connect("$sql_host", "$sql_usuario", "$sql_pass") or die(header ("Location: $redir?error_login=0"));
mysql_select_db("$sql_db");
$usuario_consulta = mysql_query("SELECT ID,usuario,pass,nivel_acceso FROM $sql_tabla WHERE usuario='$user'") or die(header ("Location: $redir?error_login=1"));
if (mysql_num_rows($usuario_consulta) != 0) {
// eliminamos barras invertidas y dobles en sencillas
$login = stripslashes($HTTP_POST_VARS['user']);
// encriptamos el password en formato md5 irreversible.
$password = md5($HTTP_POST_VARS['pass']);
$usuario_datos = mysql_fetch_array($usuario_consulta);
mysql_free_result($usuario_consulta);
mysql_close($db_conexion);
if ($login != $usuario_datos['usuario']) {
Header ("Location: $redir?error_login=4");
exit;}
// si el password no es correcto ..
// salimos del script con error 3 y redireccinamos hacia la página de error
if ($password != $usuario_datos['pass']) {
Header ("Location: $redir?error_login=3");
exit;}
// Paranoia: destruimos las variables login y password usadas
unset($login);
unset ($password);
// En este punto, el usuario ya esta validado.
// Grabamos los datos del usuario en una sesion.
// le damos un mobre a la sesion (por si quisieramos identificarla)
session_name($usuarios_sesion);
// incia sessiones
session_start();
// Paranoia: decimos al navegador que no "cachee" esta página.
session_cache_limiter('nocache,private');
// Asignamos variables de sesión con datos del Usuario para el uso en el
// resto de páginas autentificadas.
// definimos $usuarios_id como IDentificador del usuario en nuestra BD de usuarios
$usuario_id=$usuario_datos['ID'];
// definimos $usuario_nivel con el Nivel de acceso del usuario de nuestra BD de usuarios
$usuario_nivel=$usuario_datos['nivel_acceso'];
//definimos $usuario_nivel con el Nivel de acceso del usuario de nuestra BD de usuarios
$usuario_login =$usuario_datos['usuario'];
//definimos $usuario_password con el password del usuario de la sesión actual (formato md5 encriptado)
$usuario_password =$usuario_datos['pass'];
// registramos las variables en la sesión:
session_register("usuario_id");
session_register("usuario_nivel");
session_register("usuario_login");
session_register("usuario_password");
// Hacemos una llamada a si mismo (scritp) para que queden disponibles
// las variables de session en el array asociado $HTTP_...
Header ("Location: $PHP_SELF?");
exit;
} else {
// si no esta el nombre de usuario en la BD o el password ..
// se devuelve a pagina q lo llamo con error
Header ("Location: $redir?error_login=2");
exit;}
} else {
// -------- Chequear sesión existe -------
// Iniciamos el uso de sesiones
session_start();
// Chequeamos si estan creadas las variables de sesión de identificación del usuario,
// El caso mas comun es el de una vez "matado" la sesion se intenta volver hacia atras
// con el navegador.
if (!isset($HTTP_SESSION_VARS['usuario_login']) && !isset($HTTP_SESSION_VARS['usuario_password'])){
// Borramos la sesion creada por el inicio de session anterior
session_destroy();
die ("<A href=http://www.fiestasatope.com/index.php><center>REGISTRATE</center></a>");
exit;
}
}
?>
Gracias de antemano