Lo basico para comprender un sistema de login seria tener un formulario donde ingresar nuestros datos de acceso, usuario y password, esos datos se envian a un archivo que verifique la existencia y coincidencia de esos datos en nuestra base de datos y en base a eso genere dos opciones.
1)si los datos son correctos genera una session y redirecciona o muestra en pantalla un link hacia la seccion restringuida.
2) si los datos de acceso son incorrectos, redireciona o muestra un link hacia la pagina anterior permitiendo volver a intentar.
3) en la seccion restringuida tenemos un scipt q verifica si existe la session generada en el archivo de verificacion, caso contrario redirecciona hacia el archivo de login.
estructura de la tabla de usuarios en nuestra base de datos:
CREATE TABLE `users` (
`id_user` int(10) NOT NULL auto_increment,
`nickname` varchar(30) NOT NULL,
`email` varchar(100) NOT NULL,
`password` varchar(10) NOT NULL,
PRIMARY KEY (`id_user`)
) ENGINE=MyISAM DEFAULT CHARSET=latin1 AUTO_INCREMENT=0;
Archivo con formulario para cargar los datos de acceso (index.php):
<form id=”login” name=”login” method=”POST” action=”verificacion.php”>
<h2>Por favor ingrese con su nombre de Ususario y Password</h2>
Username:<br />
<input type=”text” name=”nickname” id=”nickname” /><br />
Password:<br />
<input type=”password” name=”password” id=”password” /><br />
<input type=”submit” name=”button” id=”button” value=”Submit” />
<input type=”reset” value=”Reset” />
Archivo de verificacion:
<?php session_start();
include(‘tu archivo de conexion.php’);
// verificacion de las variables recibidas por post
$nickname=$_POST['nickname'];
$password=$_POST['password'];
$sql=”SELECT nickname,password FROM users WHERE nickname=’”.$nickname.”‘ AND password=’”.$password.”‘”;
$result=mysql_query($sql);
// cuanto la cantidad encontrada
$count=mysql_num_rows($result);
//si existe una coincidencia esta ok
if($count==1){
// si los datos son correctos genero session con el nombre de usuario
session_register(‘nickname’);
//si esta correcta la informacion del usuario redirecciono a la seccion restringuida.
header(“location:area_restringuida.php”);
}
else {
//si los datos son incorrectos muestro un link hacia la pagina inicial con el formulario.
$message=’<h3>Nombre de Usuario o Password Incorrectos</h3><br> <a href=”index.php”>Intente Nuevamente </a>’;
}
?>
archivos de la seccion restringuida:
<?php session_start();
//sino existe la session con el nombre de usuario redirecciono hacia la pagina de login
if(!session_is_registered(‘nickname’)){
header(“location:index.php”);
}
?>
este seria un ejemplo basico de login con php y mysql se puede profundizar mucho mas en el tema pero para aquel que esta comenzando le da una idea general del funcionamiento de un sistema de login.
puede hacerse que la verificacion la haga en el mismo documento donde esta el form y mediante un condicional mostrar el formulario o el acceso, tambien se puede inverstigar mas sobre seguridad con md5 para los password , podemos agregar a nuestra tabla en la BD un campo para niveles de acceso y mediante el nivel de acceso del usuario logueado mostrar mas o menos opciones..etc.. una vez entendido esto puedes googlear en busca de mas opciones.
Saludos y cualquier duda puedes preguntar!


