duda con jquery

Iniciado por RedZer, 4 Mayo 2011, 22:32 PM

0 Miembros y 1 Visitante están viendo este tema.

RedZer

bueno pasa lo siguiente echo un login en el cual verifico si el usuario existe o no atra vez de jquery usando el metodo getJSON y dependiendo de esto mando un mensaje el tipo"el usuario existe" o de lo contrario"el usuario no existe" bueno todo esto me funciona  pero ahora el problema es de que no se como redireccionar al menu cuando la verificasion del usuario aya sido correcta . anexo mi code

login.php

Código (php) [Seleccionar]


<input type="text" name="usuario" class="nombre" id="usuario" value="">
<input type="password" name="contrasena" id="contra" class="email" value="">
<input type="submit" name="button" id="boton1" value="Iniciar Sesión" />
<div id="resultados"></div>


login.js
Código (javascript) [Seleccionar]

var x;
x=$(document);
x.ready(inicializarEventos);

function inicializarEventos()
{
  var x;
  x=$("#boton1");
  x.click(presionSubmit);
}

function presionSubmit()
{
  var v=$("#usuario").attr("value");
  var b=$("#contra").attr("value");
 
  $.getJSON("consultar/consultar.php",{usuario:v,contra:b},llegadaDatos);
  return false;
}

function llegadaDatos(datos)
{
  $("#resultados").html(datos.variable);
}




consultar.php

Código (php) [Seleccionar]


<?php
header
('Content-Type: text/txt; charset=ISO-8859-1');
session_start(); 
include(
"../conexion/conexion.php"); 

$usuario=$_REQUEST['usuario'];
$contrasena=$_REQUEST['contra'];

conectar();

          
$queEmp2 mysql_query("
                    SELECT usuario,contrasena 
                          FROM usuarios where usuario='
$usuario' and contrasena='$contrasena' ");
          
$rowEmp2 mysql_fetch_assoc($queEmp2);
         
$user=$rowEmp2['usuario'];
 $pass=$rowEmp2['contrasena'];
 
desconectar();





if(
$user!='' and $pass!='')
                           {
 
 echo 
"{'variable':'<div class=exito>Bienvenido (a):[ $user ] en Breve Sera Redirigido al Menu Principal Espere 3 Segundos Porfavor...</div>'}";







                           }else{
   
echo "{'variable':'<div class=error>El Usuario o la Contrasena es Incorrecta Verifique Porfavor ...</div>' }";
        
      
 
   
   }






?>


Nacido y criado entre gente que enseño a pensar antes de creer a ciegas, Todo me causa curiosidad en el mundo

Nakp

primero, getJSON es un alias de get, talvez mas rapido porque no tiene que detectar que tipo de get le estas pasando

no imprimas una div, imprime un numero o agrega al json un "status" que sea true/false o 0/1
y agrega a tu funcion la verificacion

Código (javascript) [Seleccionar]
function llegadaDatos(datos)
{
  if(datos.status == 1)
    //redireccionas a tu menu
  else
    $("#resultados").html(datos.variable); //muestra el error!
}
Ojo por ojo, y el mundo acabará ciego.

RedZer

Cita de: Nakp en  5 Mayo 2011, 01:06 AM
primero, getJSON es un alias de get, talvez mas rapido porque no tiene que detectar que tipo de get le estas pasando

no imprimas una div, imprime un numero o agrega al json un "status" que sea true/false o 0/1
y agrega a tu funcion la verificacion

Código (javascript) [Seleccionar]
function llegadaDatos(datos)
{
  if(datos.status == 1)
    //redireccionas a tu menu
  else
    $("#resultados").html(datos.variable); //muestra el error!
}


haber supongamos que imprimo el numero asi como tu dices lo del status es una propiedad?? entiendo lo de true/false  0/1
pero mi duda es como sabre que se tiene que ejecutar el status ? tengo que hacer otra funcion o como?


Nacido y criado entre gente que enseño a pensar antes de creer a ciegas, Todo me causa curiosidad en el mundo

Nakp

#3
Código (php) [Seleccionar]
echo "{'variable':'<div class=error>El Usuario o la contraseña es Incorrecta Verifique Porfavor ...</div>', 'status':'false' }";

simplemente agregas una propiedad en tu objeto ;)

la compruebas en la funcion que ejecutas cuando "success" tu peticion :P
Ojo por ojo, y el mundo acabará ciego.

RedZer

exelente Nakp no conocia esta opcion gracias;) ya me quedo
Nacido y criado entre gente que enseño a pensar antes de creer a ciegas, Todo me causa curiosidad en el mundo