repitamos esto es cuestión de detectar el problema:
1. si ves que no te funciona entonces imprime las variables paso a paso:
echo $nombre "<br>";
echo $password"<br>";
echo $salt "<br>";
echo $segura "<br>";
2. Error en esta linea: Salt no es una variable??
$
3. el orden es muy importante:
Código PHP:
Ver originalpublic function login($llibre){
//primero se declaran las variables internas preferiblemente Privadas para la funcion publica
private $salt="12986438517624jkshdfvgbuaysd98127634hjd":
//recogemos las variables post del formulario
$nombre = $llibre->getEmail();
$password = $llibre->getPassword() ;
$segura =crypt(/*aquicolocas el hash de encriptar*/, $password.$salt); //realizamos la consulta sql
$query = "SELECT * FROM users WHERE email='$nombre' AND password='$segura'"; //las variables usadas en el where combienen meterlas en comillas simples
//ejecutamos la consulta y guardamos el resultado en la variable resultado
$con = new mysqldb();
$con->consulta($query);
//IMPORTANTE estas buscando * (Toda la informacion de un usuario) esto es un array verdad entonces donde lo guardas??
echo $query; // no puedes imprimir un array asi
// se ejectua la consulta y se usa el metodo con de la clase class para la conexion, y se guarda en $res lo que devuelve la consulta
$res=mysql_query( $query, Conectar
::con() ); //esto te devuelve el array??
//La comparacion para el loggin es
if($segura==$row[contraseña de la base de datos]) {
echo 'Es igual';
}else{
echo "Es diferente";
}
/*--------------Revisa las malas practicas--------------------*/
if(crypt(salt
.$segura)==salt
.$segura) { echo 'Es igual';
}else{
echo "Es diferente";
}
PD: estoy trabajando en un sistema de loggin similar