Hola
tengo ese codigo que no se que le pasa que no me funciona, aver si me podeis ayudar porfabor.
Código:
<?
require 'config.php' ;
if($_POST[enviar]) {
function quitar($texto) {
$texto = trim($texto) ;
$texto = htmlspecialchars($texto) ;
# --> Elimina espacios que no pueden ser borrados por trim()
$texto = str_replace(chr(160),'',$texto) ;
return $texto ;
}
$nick = quitar($_POST[nick]) ;
$contrasena = md5(md5(quitar($_POST[contrasena]))) ;
$con = mysql_query("select id,contrasena from usuarios where nick='$nick'") ;
$datos = mysql_fetch_assoc($con) ;
if(mysql_num_rows($con)) {
if($datos[contrasena] == $contrasena) {
setcookie('uid',$datos[id],time()+604800) ;
setcookie('unick',$nick,time()+604800) ;
setcookie('ucontrasena',$contrasena,time()+604800) ;
header("location: $_SERVER[HTTP_REFERER]") ;
}
else {
echo 'La contraseña es incorrecta. Haz click <a href="javascript:history.back(-1)">aquí</a> para regresar.' ;
}
}
else {
echo 'El nick no existe. Haz click <a href="javascript:history.back(-1)">aquí</a> para regresar.' ;
}
}
?>
El caso es que si pongo algun nick que no existe me muestra El nick no existe y si pongo una contresenya erronea me dice que la contresenya es incorrecta, osea que hasta aqui bien pero a la hora de poner bien un nick y contrsenya que ya existen en la base de datos me muestra contrsenya incorrecta
Es como si passara de este IF:
if($datos[contrasena] == $contrasena) {
setcookie('uid',$datos[id],time()+604800) ;
setcookie('unick',$nick,time()+604800) ;
setcookie('ucontrasena',$contrasena,time()+604800) ;
header("location: $_SERVER[HTTP_REFERER]") ;
}
else {
echo 'La contraseña es incorrecta. Haz click <a