te paso mi sistema de usuarios creo que es lo que necesitas:
index.php (ingreso a la zona restringida y login) :
Código :
<?php
session_start();
// Mostrar error de Autentificación
require_once("../conn/conn.php");
if(isset($_POST["nick"])){
require_once("permisos/validar.php");
};
if(isset($_SESSION["nivel_acceso"])){
echo '
<script language="JavaScript">
var pagina="inicio/index.php"
function redireccionar()
{
parent.location.href=pagina
}
setTimeout ("redireccionar()", 1000);
</script>
';
}
else{
echo '
<!doctype html public "-//w3c//dtd html 4.0 transitional//en">
<html>
<head>
<title> administración web</title>
<meta name="generator" content="editplus">
<meta name="author" content="">
<meta name="keywords" content="">
<meta name="description" content="">
</head>
<body bgcolor="#3399FF">
<div style="position: absolute; top:200px; left: 50px;">
<form action="index.php" method="post">
<table width="200">
<tr>
<td colspan="2"><font size="5" color="#FFFFCC">Esta usted entrando a una zona restringida</font></td>
</tr>
<tr>
<td> Usuario:</td>
<td>Password:</td>
</tr>
<tr>
<td><input type="text" name="nick"></td>
<td><input type="password" name="password"></td>
</tr>
<tr>
<td colspan="2"><input type="submit" value="entrar"></td>
</tr>
</table>
</form>
</div>
</body>
</html>
';
};
?>
validar.php
Código :
<?php
session_start();
mysql_select_db($database_conn, $conn);
$sql= 'SELECT * FROM `usuarios` WHERE `nick` = \''.$_POST["nick"].'\' AND `password` = \''.$_POST["password"].'\' LIMIT 0, 30 ';
$matriz_verifica = mysql_query($sql, $conn) or die(mysql_error());
$fila_verifica = mysql_fetch_assoc($matriz_verifica);
if($fila_verifica["nick"] == $_POST["nick"] && $fila_verifica["password"] == $_POST["password"] ) {
$_SESSION['nivel_acceso']= $fila_verifica["nivel_acceso"];
$_SESSION['nick']= $fila_verifica["nick"];
}
else {
echo "<h1>Su contraseña o password es incorrectos<h1>";
}
?>
salir.php
Código :
<?php
session_start();
unset($_SESSION['nivel_acceso']);
unset($_SESSION['nick']);
ob_start();
header ("Location: ../../index.php");
ob_end_flush();
?>
y en cada pagina restringida colocas este codigo para validar si el usuario tiene permiso
Código :
//-- se verifica la sesion --//
session_start();
if($_SESSION['nivel_acceso']<10 && isset($_SESSION['nivel_acceso']) )
{
//acciones que suceden cuando el usuario es permitido por ejemplo incluir la conexión a la db
}
else{
// usuario denegado se le manda a paseo
ob_start();
header ("Location: ../index.php");
ob_end_flush();
};
//-- /se verifica sesion --//
disculpen las tablas pero en esto no me importo (ni conocia los estandares)
además si existe algun hoyo de seguridad hagan el favor de avisar