Ahora me doy cuenta que introducioendo cualquier cosa el script me envia a la pagina protegida sin ningun problema vamos que seria lo mismo no tenerla protegida. No se si se debe a que pongo algo mal o que pero esto siogue sin ir.
Te dejo aqui el archivo aut_verifica.inc.php para que veas los cambios:
Código PHP:
<?
// Autentificator
// Gestión de Usuarios PHP+Mysql+sesiones
// by Pedro Noves V. (Cluster)
// [email][email protected][/email]
// v1.0 - 17/04/2002 Versión inicial.
// v1.01 - 24/04/2002 Solucionado error sintactico en aut_verifica.inc.php.
// v1.05 - 17/05/2002 Optimización código aut_verifia.inc.php
// v1.06 - 03/06/2002 Corrección de errores de la versión 1.05 y error con navegadores Netscape
// v2.00 - 18/08/2002 Optimización código + Seguridad.
// Ahora funciona con la directiva registre_globals= OFF. (PHP > 4.1.x)
// Optimización Tablas SQL. (rangos de tipos).
// v2.01 - 16/10/2002 Solucionado "despistes" de la versión 2.00 de Autentificator
// en aut_verifica.inc.php y aut_gestion_usuarios.php que ocasinavan errores al trabajar
// con la directiva registre_globals= OFF.
// Solucionado error definición nombre de la sessión.
//
// Descripción:
// Gestión de Páginas restringidas a Usuarios, con nivel de acceso
// y gestión de errores en el Login
// + administración de usuarios (altas/bajas/modificaciones)
//
// Licencia GPL con estas extensiones:
// - Uselo con el fin que quiera (personal o lucrativo).
// - Si encuentra el código de utilidad y lo usas, mandeme un mail si lo desea.
// - Si mejora el código o encuentra errores, hagamelo saber el mail indicado.
//
// Instalación y uso del Gestor de usuarios en:
// documentacion.htm
// ----------------------------------------------------------------------------
// 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("?",$_SERVER['HTTP_REFERER']);
$pag_referida=$url[0];
$redir=$pag_referida;
// chequear si se llama directo al script.
if ($_SERVER['HTTP_REFERER'] == ""){
echo"
<html>
<title>Área de Administración - www.tupagina.tal</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=\"$pageprote\" 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\">www.tupagina.tal</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($_GET['error_login'])){
$error=$_GET['error_login'];
echo "<font face='Verdana, Arial, Helvetica, sans-serif' size='1' color='#FF0000'>Error: $error_login_ms[$error]";
}
?>
<?
echo"</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>
</body>
</html>
";
die ("Error cod.:1 - Acceso incorrecto!");
exit;
}
.....
y esto es lo que incluyo en laqs paginas ocn proteccion:
Código PHP:
<?php
$pageprote="panelcontrol.php";
require ("../aut_verifica.inc.php");
// Mostrar error de Autentificación.
include ("../aut_mensaje_error.inc.php");
if (isset($_GET['error_login'])){
$error=$_GET['error_login'];
echo "Error: $error_login_ms[$error]";
}
$nivel_acceso=10;
if ($nivel_acceso < $_SESSION['usuario_nivel']){
header ("Location: $redir?error_login=5");
exit;
}
No se a que se debe, ni me recuerda la sesion cuando estoy bien logeado y cuando pongo el password mal me sale el error de autentificacion pero denajo me sale el contenido de la página.
Yo lo que intento es hacer un formulario generico para todas la pagins incluyendo en el formulario el nombre de la pagina mediante la variable $pageprote
Pero no consigo hacerlo funcionar. No me da ningun error solo que no me recuerda la secion y cuando me equivoco de ocntraseña me sale de nuevo la pagina con el error pero me muestra su contenido.
Espero Cluster o algiuno que haya usado este script me pueda ayudar ya que es bastante bueno.
Un Saludo