Ver Mensaje Individual
  #1 (permalink)  
Antiguo 10/06/2015, 08:38
kapi2454
 
Fecha de Ingreso: junio-2011
Mensajes: 42
Antigüedad: 13 años, 5 meses
Puntos: 0
Login con ajax no me funciona.

Buenos días gente del foro, he aquí mi post con una duda.
Hace poco comencé con ajax (jquery ya lo manejaba en lo basico y decidí aplicar la tecnica).

Les dejo el codigo abajo, el problema es que nunca me re direcciona a la pagina principal. Incluso si el usuario o contraseña están bien.
Luego de ingresar el usuario y contraseña correctamente me da error, me devuelve un 0 en vez de un 1. Pero si presiono F5 veo que la variable $_SESSION[logeado] esta correctamente cargada con el valor "tiene_permido".

Código:
<!doctype html>
<html lang="es">
    <head>
        
<script src="http://ajax.googleapis.com/ajax/libs/jquery/1.11.2/jquery.min.js"></script>
<?php
session_start();


if(ISSET($_POST[puede_entrar2]))
{
    session_start();
    
    //==============================Tiene los datos de conexion==========
    include('Barra/conexion.php'); 
    
    // Usuario y Contraseña enviados
    $nick=$_POST['nick'];
    $clave=$_POST['clave'];
	
    $nick = stripslashes($nick);
    $clave = stripslashes($clave);
    $nick = mysql_real_escape_string($nick);
    $clave = mysql_real_escape_string($clave);

    $sql="SELECT * FROM usuarios WHERE nick='$nick' and clave='$clave'";
    $result=mysql_query($sql);

    // Cuenta los resultados de arriba
    $count=mysql_num_rows($result);

    ///////Busca los permisos que tiene el usuario

    if($count=='1')
    {
    
    $_SESSION['logeado']="tiene_permiso";
    $_SESSION['nick']=$nick;

    //Register $myusername, $mypassword and redirect to file "login_success.php"
    session_register("nick");
    session_register("clave");
    
    //=================la idea es que en success devuelva este valor
    echo 1,
    
    }
    else
    {    
        
    echo 0,    
        
    }

}   

//==============================Compruebo a mano si las variables se cargan, o si al menos llega a esta parte del IF
//=========================Si presiono F5 luego de logearme aparece el valor "tiene_permiso"
echo'<div id="resultado">';
echo "Variable:";
echo $_SESSION['logeado'];
echo "<br>";
echo "Nombr:";
echo $_SESSION['nick'];
echo'</div>';

?>


    <meta http-equiv="Content-Type" content="text/html; charset=utf-8">
	
	<title>Control - Inicio de sessión</title>
	<link rel="stylesheet" type="text/css" href="style.css"> 
	
	<meta name="viewport" content="width=device-width, user-scalable=no, initial-scale=1.0, maximum-scale=1.0, minimum-scale=1.0">
        
</head>

	
<div class="ingreso" id="rewesultado">
    <form name="accion"  >
	<p>Inicio de sessíon</p>
	<input id="nick" name="nick" type="text" autofocus  placeholder="Usuario" required title="Introduzca un monto">
<div id="escriba_nick">Por favor escriba su Nick</div>
	<br>
	<input id="clave" name="clave" type="password" placeholder="Contrase&ntilde;a" required>
<div id="escriba_pass">Por favor escriba su contraseña</div>
	<br>
<div id="error_ingreso">Usuario o Contraseña Incorrectos</div>
        <input name="accion" type="button" onclick="validar()" value="Ingresar" id="bt_ingresar">
    </form>	
</div>



<script type="text/javascript">
function validar(){
        if ($('#nick').val()=="")
            {
                $("#escriba_nick").slideDown("slow").delay( 1800 );
                $("#escriba_nick").slideUp("slow");
                $("#nick").focus();
            }
            else
            {
            if ($('#clave').val()=="")
                {
                    $("#escriba_pass").slideDown("slow").delay( 1800 );
                    $("#escriba_pass").slideUp("slow");
                    $("#clave").focus();
                }
                else
                {
                    mandar();
                }
            }
        }


function mandar(){
        var nick       = $('#nick').val();
        var clave      = $('#clave').val();
        var divResultado = document.getElementById('#mierda');
       
         $.ajax({
           url      :   "index.php",
           type     :   "POST",
           async    :   false,
           data     :{nick:nick,clave:clave,puede_entrar2:1},
           success  : function (resp)
                                        {
                                            if (resp == 1)
                                            {
                                                window.location="home.php";
                                                
                                            }
                                            else
                                            {
                                                $('#nick').val("");
                                                $('#clave').val("");
                                                $("#error_ingreso").slideDown("slow").delay( 3000 );  
                                                $("#error_ingreso").slideUp("slow");
                                                $("#bt_ingresar").val("Ingresar");
                                            }
                                        }
           
       });
    
    
    
    
}
</script>
No importa lo que haga siempre me termina apareciendo que el usuario y contraseña están mal.

Alguna idea? Desde ya muchas gracias como siempre.