Estoy creando un sistema de usuarios (ahora más que nada por "satisfacción personal", aunque quizá haga algo más de aquí en adelante...quien sabe) y en el registro (registrar.php) si consigo que encripte la contraseña que el user ha introducido y la guarda en la DB con éxito, pero ahora tengo que encriptar la contraseña en el login (login.php y autentificar.php) para que al comprobarla con la que hay en la BD (encriptada ya) la verifique.
Supongo que será fácil hacerlo, pero esto de la seguridad lo he cogido hace poco y no lo manejo. Me he mirado varios hilos y otras páginas relacionado con esto pero no logro "entenderlo"

La base de datos es MySQL, y los archivos son:
reg.php
Código PHP:
<?
include('config.php');
echo '<form action="registrar.php" method="POST">
Nick: <input type="text" name="nick" size="30"><br>
Password: <input type="password" name="pass" size="30" ><br>
Repetir Password: <input type="password" name="pass1" size="30" ><br>
email: <input type="text" name="email" size="50"><br>
Rollo: <textarea name="rollo" cols="30" rows="10"></textarea><br>
<input type="submit" name="submit" value="Enviar"></form>';
?>
Código PHP:
<?
include('config.php');
if(($_POST[nick] == ' ') or ($_POST[pass] == ' ') or ($_POST[pass1] == ' ') )
{
Header("Location: reg.php");
}else{
if($_POST[pass] != $_POST[pass1])
{
echo 'Las passwords no son iguales';
}else{
$user = stripslashes($_POST["nick"]);
$user = strip_tags($user);
$pass = stripslashes($_POST["pass"]);
$pass = strip_tags($pass);
$usuarios=mysql_query("SELECT nick FROM users WHERE nick='$user' ");
if($user_ok=mysql_fetch_array($usuarios))
{
echo 'El usuario ya esta registrado';
mysql_free_result($usuarios);
}else{
$email = stripslashes($_POST["email"]);
$email = strip_tags($email);
$rollo = stripslashes($_POST["rollo"]);
$rollo = strip_tags($rollo);
$rollo = str_replace("\n\r","<br>",$rollo);
$rollo = str_replace("\r\n","<br>",$rollo);
$rollo = str_replace("\n","<br>",$rollo);
$fecha = time();
$level = "2";
$pass = md5($pass);
mysql_query("INSERT INTO users (nick,pass,email,fecha,level,rollo) values ('$user','$pass','$email','$fecha','$level','$rollo') ");
echo 'Usuario registrado con éxito';
}
}
}
?>
Código PHP:
<?
include('config.php');
if(!isset($_SESSION[usuario]) )
{
echo '<form action="autentificar.php" method="POST">
Nick: <input type="text" name="nick" size="30"><br>
Password: <input type="password" name="pass" size="30" ><br>
<input type="submit" name="submit" value="Enviar"></form>';
}else{
echo 'Bienvenido '.$_SESSION[usuario]; //ej Bienvenido Juan
echo '<br>Tu level es '.$_SESSION[level]; //mostramos el level del user
if($_SESSION[level] == 1)
{
echo '<br><a href=paginaprivada.php>Ir a pagina privada</a>';
}
echo '<br><a href=logout.php>Salir</a>';
}
?>
Código PHP:
<?
include('config.php');
if( ($_POST[nick] == ' ') or ($_POST[pass] == ' ') )
{
Header("Location: login.php");
}else{
$usuarios=mysql_query("SELECT * FROM users WHERE nick='$_POST[nick]' and pass='password' ");
if($user_ok = mysql_fetch_array($usuarios))
{
session_register("usuario");
session_register("idusuario");
session_register("level");
$_SESSION[usuario] = $user_ok["nick"];
$_SESSION[idusuario] = $user_ok["id"];
$_SESSION[level] = $user_ok["level"];
Header("Location: login.php");
}else{
echo 'Nick y pass incorrectos';
}
}
?>
Saludos y mil gracias.