Ver Mensaje Individual
  #1 (permalink)  
Antiguo 04/11/2015, 17:39
EmilianoEmiliano
 
Fecha de Ingreso: mayo-2015
Mensajes: 47
Antigüedad: 9 años
Puntos: 0
Información Login con ajax

Hola como están..Por favor me podrían guiarme un poco con lo siguiente.

Tengo un login con jquery funciona muy bien, pero se me ocurrió cambiarlo para hacerlo con ajax, de la siguiente manera:

Esta parte es la final del html:

Código HTML:
Ver original
  1. <div id="error" style="display:none;"></div>
  2.  
  3. <input type="button" id="login" name="login" onclick="javascript:validar_campos();" class="button button-primary" value="Ingresar"/>

Esta parte es del ajax:

Código Javascript:
Ver original
  1. function enviar_validar(){
  2.     divResultado = document.getElementById('error');   
  3.     cedula=document.ingreso_sistema.cedula.value;
  4.     contrasena=document.ingreso_sistema.contrasena.value;
  5.     ajax=objetoAjax();
  6.     ajax.open("POST", "login_prueba/validacion_datos.php",true);
  7.     ajax.onreadystatechange=function() {
  8.         if (ajax.readyState==4) {
  9.             //mostrar resultados en esta capa
  10.             divResultado.innerHTML=ajax.responseText
  11.             divResultado.style.display='block';    
  12.         }
  13.     }
  14.     ajax.setRequestHeader("Content-Type","application/x-www-form-urlencoded");
  15.     ajax.send("cedula="+cedula+"&contrasena="+contrasena)
  16. }

El código php

Código PHP:
Ver original
  1. <?php
  2. include("db.php");
  3. if(isSet($_POST['cedula']) && isSet($_POST['contrasena']))
  4. {
  5. // username and password sent from Form
  6. $cedula=$_POST['cedula'];
  7. $contrasena=$_POST['contrasena'];
  8. $sql="SELECT * FROM empleado WHERE contrasena_empleado='$contrasena' and ci_empleado='$cedula'";
  9. $res=mysql_query($sql,$con) or die (mysql_error());
  10. if(mysql_num_rows($res)==1){
  11. $_SESSION['login_user']=$cedula;
  12. header("location:Administrador/inicio.php");  
  13. }else{
  14.    
  15. $sql_01="SELECT * FROM cliente WHERE contrasena_cliente='$contrasena' and correo_cliente='$cedula'";
  16. $res_01=mysql_query($sql_01,$con) or die (mysql_error());
  17.   if(mysql_num_rows($res_01)==1){
  18.  $_SESSION['login']=$cedula;
  19. header("location:Cliente/index.php");
  20.   }else{
  21.     echo "<div id='nerror'>";
  22.       echo "ERROR: Datos incorrectos";
  23.     echo "</div>";
  24.     echo "<br/>";  
  25.     }
  26.  
  27.  
  28.  }
  29.  
  30.  
  31.  
  32. }
  33. ?>

La validación me hace muy bien, el problema es que al pasar el login, la pagina siguiente se carga en:

<div id="error" style="display:none;"></div>

Esto por la misma forma de realizar con ajax.

Pero abría forma si pasa el login, que se vaya a la otra pagina sin necesidad de cargarse en el:

<div id="error" style="display:none;"></div>

Probé con javascript, con el window.load en php, pero no funciona.

Gracias por su paciencia y su tiempo..

Última edición por EmilianoEmiliano; 04/11/2015 a las 18:06