Bienvenido a datoweb.com!! En este foro podrás encontrar ayuda sobre diseño y desarrollo web en general. Si quieres formar parte de esta comunidad para pedir ayuda o colaborar ayudando a otros usuarios del foro solo tienes que registrarte desde el siguiente enlace: Registrarse en el Foro

Problemas en condicional del login con ajax

Buenas noches tengo un problema con el login y jquery qeu no me funciona me pueden ayudar por favor
archivo login.php:
<?php require_once('../l_conexion.php');
//CONSULTA BASE DATOS
	 
	
	
    mysql_select_db($database_conexion, $conexion);
    $query_Datos_login = sprintf("SELECT * FROM l_usuarios WHERE str_nombre=%s AND str_password =%s",
											GetSQLValueString($_POST['user'], "text"),
											GetSQLValueString(md5($_POST['pass']), "text"));
    $Datos_login = mysql_query($query_Datos_login, $conexion) or die(mysql_error());
    $row_Datos_login = mysql_fetch_assoc($Datos_login);
    $totalRows_Datos_login = mysql_num_rows($Datos_login);
    	if ($totalRows_Datos_login==1){
			$_SESSION['id_usser'] = $row_Datos_login['id_usuario'];
			$_SESSION['name_user'] = $row_Datos_login['str_nombre'];
			echo 'yes';
		} 
		else { 
			echo 'error'; 
		}
    mysql_free_result($Datos_login);
?>
archivo flotante:
<div id="cogebox" style="display:none">
<div id="flotantelogin"><a onclick="ventanas(2);" class="cursor">
  <span class="derecha">X</span></a>

  <form onsubmit="return false" id="formularioLogin">
  	Usuario:<br>
    <input name="user" id="user" type="text" /><br>
    Contraseña:<br>
    <input name="pass" id="pass" type="password" /><br>
    <div id="error" style="display:none"></div>
    <input name="mi_boton" type="submit" value="Iniciar" class="cursor" onclick="login_ajax(user.value,pass.value);"/><br>
  </form>
  </div>
  <div id="screenblack"></div>
  </div>
y los efectos jquery:
// JavaScript Document Creado por L_marin
var urlWeb= 'http://localhost/publipaisas/'
/* Funcion para abrir y cerrar el login */
function ventanas(valor){
	if (valor==1){
	  $('#cogebox').fadeIn(500);}
	  	else if(valor==2){
		 $('#cogebox').fadeOut(500);	
		}
}
/* Funcion para iniciar sesion */
function login_ajax(user,pass){
		$.ajax({
		type: 'POST',
		url: urlWeb+'inc/login.php',
		data: 'user=' + user + '&pass=' + pass,
		success: function(htmlrespuesta) {
			if (htmlrespuesta=='yes'){
				location.reload();
			}
			else if (htmlrespuesta=='error'){
		    $('#error').slideDown(500);
			$('#error').html('Datos incorrectos!');
			
			}
	   }
	});
	
	}	
//Función para validar cookies//
function set_cookies(valor){
		$.ajax({
		type: 'POST',
		url: urlWeb+'inc/cookies.php',
		data: 'valor=' + valor 	
	});
	$('#cookies').css("display","none");
}
Ayudenme a ver donde esta el error por favor
0
Puntos
646
Visitas
4
Resp
Por lmarin hace 37 meses
Principiante
Respuesta #1
¿Será por que no has cerrado bien la cadena de texto almacenada en la variable urlWeb? Está abierta y creo que falta un ;
var urlWeb= 'http://localhost/publipaisas/';
0
Puntos
Por Jose hace 37 meses
Experto Sitio web
Respuesta #2
Ya lo corregi el error esta en el if, por que le quito la sentencia if y funciona
0
Puntos
Por lmarin hace 37 meses
Principiante
Respuesta #3
Mmm que raro. Coloca como lo tenías antes y revisa la consola para ver el error. Para ello has clic derecho en cualquier parte de la pantalla y busca la opción de Inspeccionar Elemento. Luego selecciona la pestaña consola. Ahí te indicará el error.
0
Puntos
Por Jose hace 37 meses
Experto Sitio web
Respuesta #4
buenas te explico, en login.php tienes saltos de linea en tu código y en vez de responder yes cuando el logueo es correcto responde yes(espacio) te enseño una captura:


al tener el espacio la condición no es idéntica con lo cual no se ejecuta

Solución 1 - Limpiar se saltos de linea login.php:
<?php require_once('../l_conexion.php');
//CONSULTA BASE DATOS
    mysql_select_db($database_conexion, $conexion);
    $query_Datos_login = sprintf("SELECT * FROM l_usuarios WHERE str_nombre=%s AND str_password =%s",
											GetSQLValueString($_POST['user'], "text"),
											GetSQLValueString(md5($_POST['pass']), "text"));
    $Datos_login = mysql_query($query_Datos_login, $conexion) or die(mysql_error());
    $row_Datos_login = mysql_fetch_assoc($Datos_login);
    $totalRows_Datos_login = mysql_num_rows($Datos_login);
    	if ($totalRows_Datos_login==1){
			$_SESSION['id_usser'] = $row_Datos_login['id_usuario'];
			$_SESSION['name_user'] = $row_Datos_login['str_nombre'];
			echo 'yes';
		} 
		else {
			echo 'error';
		}
    mysql_free_result($Datos_login);
?>
Solución 2 - Si la solución 1 no funciona siempre puedes poner el espacio en blanco en la función ajax:
10
Puntos
Por alber hace 37 meses
Administrador
Compartir en facebook
Compartir en twitter
Compartir
Para comentar Inicia sesión o Registrate