Foros del Web » Programando para Internet » Jquery »

Problema con validar en jquery.

Estas en el tema de Problema con validar en jquery. en el foro de Jquery en Foros del Web. Hola tengo esto en jquery para validar si un usuario esta presente o no en una base de datos MySQL. jQuery: @import url("http://static.forosdelweb.com/clientscript/vbulletin_css/geshi.css"); Código Javascript ...
  #1 (permalink)  
Antiguo 17/05/2011, 19:36
 
Fecha de Ingreso: septiembre-2010
Mensajes: 147
Antigüedad: 14 años, 1 mes
Puntos: 3
Problema con validar en jquery.

Hola tengo esto en jquery para validar si un usuario esta presente o no en una base de datos MySQL.

jQuery:
Código Javascript:
Ver original
  1. <script language="javascript">
  2. $(document).ready(function()
  3. {
  4.     $("#login_form").submit(function()
  5.     {
  6.         //remove all the class add the messagebox classes and start fading
  7.         $("#msgbox").removeClass().addClass('messagebox').text('Chequeando....').fadeIn(1000);
  8.         //check the username exists or not from ajax
  9.     $.post("acceso-destacados.php",{ email:$('#email').val(),password:$('#password').val(),rand:Math.random() } ,function(data)
  10.         {
  11.           if(data=='yes') //if correct login detail
  12.           {
  13.             $("#msgbox").fadeTo(200,0.1,function()  //start fading the messagebox
  14.             {
  15.               //add message and change the class of the box and start fading
  16.               $(this).html('Ingresando.....').addClass('messageboxok').fadeTo(900,1,
  17.               function()
  18.               {
  19.                  //redirect to secure page
  20.                  document.location='index.html';
  21.               });
  22.             });
  23.           }
  24.           else
  25.           {
  26.             $("#msgbox").fadeTo(200,0.1,function() //start fading the messagebox
  27.             {
  28.               //add message and change the class of the box and start fading
  29.               $(this).html('No estás registrado!').addClass('messageboxerror').fadeTo(900,1);
  30.             });    
  31.           }
  32.  
  33.         });
  34.         return false; //not to post the  form physically
  35.     });
  36.     //now call the ajax also focus move from
  37.  
  38. });
  39. </script>


HTML Formulario :
Código HTML:
Ver original
  1. <form action="" method="POST" id="login_form" enctype="multipart/form-data">
  2. <br>
  3. <input  autocomplete="off" maxlength="40" type="email" id="email" name="email" />
  4. <input  autocomplete="off" maxlength="40" type="password" id="password" name="password" />
  5. <!-- Terminamos el con Boton para enviar -->
  6. <br>
  7. <br>
  8. <button type="submit" name="submit" class="button button-blue"> Acceder al sistema</button>
  9. <span id="msgbox" style="display:none"></span>
  10. </form>


Codigo PHP para comprobar si existe usuario en MySQL. "acceso-destacados.php"

Código PHP:
Ver original
  1. <?php session_start();
  2.  
  3. //Conectamos con la base de datos
  4. $link = mysql_connect('localhost', 'root', '');
  5. if (!$link) {
  6.     die('Error con la Conexion: ' . mysql_error());
  7. }
  8. //seleccionamos la base de datos| Puedes cambiar la base de datos aquí
  9. mysql_select_db('publicalibre');
  10.  
  11. //obtenemos los valores por el metodo post
  12. $email                  =   htmlspecialchars($_POST['email'],ENT_QUOTES);
  13. $password               =   md5($_POST['password']);
  14.  
  15.  
  16. //recuperamos la consulta para validar el usuario con su contraseña
  17. $sql            =   "SELECT usuarios.nombre, usuarios.password, usuarios.email FROM usuarios WHERE usuarios.email='".$email."'";
  18.  
  19. $result         =   mysql_query($sql);
  20. $row            =   mysql_fetch_array($result);
  21.  
  22. //if el usuario existe -> entra
  23. if(mysql_num_rows($result)>0)
  24. {
  25.     //compara la contraseña
  26.     if(strcmp($row['password'],$password)==0)
  27.     {
  28.         echo "yes";
  29.         //establecemos los arreglos de sessiones
  30.         $_SESSION['nombre']     = $row['nombre'];
  31.         $_SESSION['email']      = $row['email'];
  32.         $_SESSION['password']   = $row['password'];
  33.        
  34.     }
  35.     else{
  36.         echo "no";
  37.     }
  38. }else{
  39.     echo "no"; // Login invalido
  40. }
  41.  
  42. ?>



El problema es que siempre me muestra No estas Registrado!, y compruebo con el firebug que valida bien. Pero no encuentro el problema en el codigo de jquery.

Espero que alguién me ayude, muchas gracias!

Dejo una foto:

  #2 (permalink)  
Antiguo 17/05/2011, 20:57
 
Fecha de Ingreso: septiembre-2010
Mensajes: 147
Antigüedad: 14 años, 1 mes
Puntos: 3
Respuesta: Problema con validar en jquery.

Bueno lo arregle, volvi a crear todo de nuevo y ahora funciona sin problemas, dejo el codigo:

Código Javascript:
Ver original
  1. <script language="javascript">
  2.  
  3. $(document).ready(function()
  4. {
  5.     $("#login_form").submit(function()
  6.     {
  7.         //Quitar toda la clase añadir las clases de mensaje y comenzar la decoloración
  8.         $("#msgbox").removeClass().addClass('cajaMensaje').text('Chequeando....').fadeIn(1000);
  9.         //Comprobar el nombre de usuario existe o no de acceso-destacados.php
  10.         $.post("acceso-destacados.php",{ email:$('#email').val(),password:$('#password').val(),rand:Math.random() } ,function(data)
  11.         {
  12.           if(data=='yes') //Si los detalles de inicio de sesión son correcto
  13.           {
  14.             $("#msgbox").fadeTo(200,0.1,function()  //Inicio de la decoloración de mensajes
  15.             {
  16.               //Agregar un mensaje y cambiar la clase de la caja y empezar a la decoloración
  17.               $(this).html('Iniciando.....').addClass('cajaMensajeOK').fadeTo(900,1,
  18.               function()
  19.               {
  20.                  //redirigir a la página
  21.                  document.location='index.html';
  22.               });
  23.              
  24.             });
  25.           }
  26.           else
  27.           {
  28.             $("#msgbox").fadeTo(200,0.1,function() //Inicio de la decoloración de mensaje
  29.             {
  30.               //Agregar un mensaje y cambiar la clase de la caja y empezar a la decoloración
  31.               $(this).html('No estás registrado!...').addClass('cajaMensajeERROR').fadeTo(900,1);
  32.             });    
  33.           }
  34.                
  35.         });
  36.         return false; //No envia el POST
  37.     });
  38.     //Método para posicionar el Focus en password
  39.     $("#password").blur(function()
  40.     {
  41.         $("#login_form").trigger('submit');
  42.     });
  43. });
  44. </script>

Etiquetas: ajax
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 03:50.