Por favor, ayudadme.
He encriptado las contraseñas de mi web con md5, cuando alguien se registra funciona, la contraseña se encripta en md5.
El problema viene cuando es hora de iniciar sesión. Solo se puede iniciar sesion con la contraseña encriptada.
¿Podriais ayudarme?
codigo de registro:<?
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);
$pass = md5($contrasena);
$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);
$fecha = time();
$level = "2";
mysql_query("INSERT INTO users (nick,pass,email,fecha,level) values ('$user','$pass','$email','$fecha','$level') ");
echo 'Usuario registrado exitosamente';
Header("Location: index.php");
}
}
}
?>
codigo de inicio de sesión:<?
include('config.php');
if( ($_POST[nick] == ' ') or ($_POST[pass] == ' ') )
{
Header("Location: index.php");
}else{
$usuarios=mysql_query("SELECT * FROM users WHERE nick='$_POST[nick]' and pass='$_POST[pass]' ");
$pass=md5($pass);
$sql = "SELECT * FROM users WHERE usuario='".$usuario."' AND contrasena='".$contrasena."'";
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: index.php");
}else{
echo 'Nick y pass incorrectos';
}
}
?>