Foros del Web » Programando para Internet » Javascript »

ajax consulta mysql no me va

Estas en el tema de ajax consulta mysql no me va en el foro de Javascript en Foros del Web. buenas tardes llevo casi todo el dia tratando de hacer un consulta con ajax para comprobar si existe o no un registro antes de enviar ...
  #1 (permalink)  
Antiguo 19/11/2011, 14:27
 
Fecha de Ingreso: febrero-2011
Mensajes: 64
Antigüedad: 13 años, 2 meses
Puntos: 0
Exclamación ajax consulta mysql no me va

buenas tardes llevo casi todo el dia tratando de hacer un consulta con ajax para comprobar si existe o no un registro antes de enviar el formulario y no he logrado hacerlo que puede ser?? aqui va mi codigo

en una pagina llamada prueba.php tengo esto

Código HTML:
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>Documento sin t&iacute;tulo</title>
<script src="/js/prototype.js" type="text/javascript"></script>
<script type="text/javascript"><!--  
$('#nick').focusout( function(){
    if($('#nick').val()!= ""){
        $.ajax({
            type: "POST",
            url: "ajax_comprobar_nick.php",
            data: "nick="+$('#nick').val(),
            beforeSend: function(){
              $('#msgUsuario').html('<img src="loader.gif"/> verificando');
            },
            success: function( respuesta ){
              if(respuesta == '1')
                $('#msgUsuario').html("Disponible");
              else
                $('#msgUsuario').html("No Disponible");
            }
        });
    }
});
</script>
 
</head>
<body>
<p>
  
<form id="frmRegistro">
    <label> Nick: </label>
    <input type="text" id="nick" name="nick"/><div id="msgUsuario"></div>
    <label> Nombre: </label> <input type="text" id="nombre" name="nombre"/>
</form>
<p>&nbsp;</p>
</body>
</html> 

y en otra pagina llamada ajax_comprobar_nick.php

Código PHP:
include("conex.php");
$link=Conectarse();
 
    
$nick $_POST["nick"];
    
$consulta "select * from c_costos where cc_costos = '$nick'";
    
$result mysql_query($consulta,$link);

    if( 
$result->num_rows 0)
        echo 
0;
    else
        echo 
1

estos fueron codigos tomados de la web pero no corre y ya he buscado miles de vueltas para hacer que me de el resultado.
  #2 (permalink)  
Antiguo 19/11/2011, 14:31
 
Fecha de Ingreso: noviembre-2011
Ubicación: Morelia, Mich, México
Mensajes: 95
Antigüedad: 12 años, 5 meses
Puntos: 18
Respuesta: ajax consulta mysql no me va

hola, mm pues el codigo javascript se ve bien, el problema que veo esta aqui:
Código PHP:
Ver original
  1. if( $result->num_rows > 0)
  2.         echo 0;
  3.     else
  4.         echo 1;

ahora una pregunta, ya estas seguro que te conectas a tu base de datos y que tu consulta esta bien?

luego si la respuesta es si pues la solucion seria:

Código PHP:
Ver original
  1. if( mysql_num_rows($result) > 0)
  2.         echo 0;
  3.     else
  4.         echo 1;
  #3 (permalink)  
Antiguo 19/11/2011, 14:46
 
Fecha de Ingreso: febrero-2011
Mensajes: 64
Antigüedad: 13 años, 2 meses
Puntos: 0
Respuesta: ajax consulta mysql no me va

cambien muuuchas cosas y efectivamente ya casi lo logro, ayudame porfa con esto mira el codigo ahora

Código HTML:
Ver original
  1. <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
  2. <html xmlns="http://www.w3.org/1999/xhtml">
  3. <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
  4. <title>Documento sin t&iacute;tulo</title>
  5. <script src="prototype.js" type="text/javascript"></script>
  6. <script type="text/javascript"><!--  
  7. //<![CDATA[  
  8. function comprobar(nick)  
  9. {  
  10. var url = 'http://'+location.host+'/sagtax/ajax_comprobar_nick.php';  
  11. var pars='nickname=nick';  
  12. var myAjax = new Ajax.Updater( 'comprobar_mensaje', url, { method: 'get', parameters: pars});  
  13. }  
  14. // -->  
  15. </script>
  16. </head>
  17. <form id="form1" name="form1" method="get" action="">
  18.   <input name="nickname" onblur="comprobar(this.value)" />
  19. </form>
  20. <span id="comprobar_mensaje"></span>  
  21.    
  22.    
  23. </body>
  24. </html>



y ahora el php


Código PHP:
Ver original
  1. include("conex.php");
  2. $link=Conectarse();
  3. $nick=$_REQUEST['nickname'];
  4. $sql="select * from c_costos where cc_costos ='$nick'";
  5. $res=mysql_query($sql,$link);
  6. $total=mysql_num_rows($res);
  7. if($total>0)
  8. {
  9.   // El usuario existe en la Base de Datos
  10.   echo "Este nick está ocupado";
  11. }
  12. else
  13. {
  14.   // Ese nick esta libre
  15.   echo "Nick libre";
  16. }


ya me esta llamando al archivo php pero siempre me sale Nick Disponible, y ya hice pruebas ingresando directamente en el php el valos de un nick ocupado y me dices efectivamente nick ocupado, aqui el error que veo es como esta enviando la variable nick y como la esta recibiendo el php
  #4 (permalink)  
Antiguo 19/11/2011, 14:54
 
Fecha de Ingreso: noviembre-2011
Ubicación: Morelia, Mich, México
Mensajes: 95
Antigüedad: 12 años, 5 meses
Puntos: 18
Respuesta: ajax consulta mysql no me va

Pues al parecer esto no es correcto:

Código Javascript:
Ver original
  1. var pars='nickname=nick';

ponlo de esta manera:

Código Javascript:
Ver original
  1. var pars='nickname='+nick;

saludos
__________________
Que de Cosas - Tienda En linea México

La Batalla Por tu cuerpo - Dietas|Rutinas|Entrenamientos|Salud
  #5 (permalink)  
Antiguo 19/11/2011, 14:55
 
Fecha de Ingreso: febrero-2011
Mensajes: 64
Antigüedad: 13 años, 2 meses
Puntos: 0
Respuesta: ajax consulta mysql no me va

ya encontre la solucion hice esto

Código Javascript:
Ver original
  1. var pars='nickname=nick';      por
  2.  
  3. var pars= ("nickname=" + nick);

ahora lo que necesito es que cuando me diga que esta ocupado me borre en textbox o sea para que la persona se vea obligada a escribir un nuevo nick
  #6 (permalink)  
Antiguo 19/11/2011, 15:01
 
Fecha de Ingreso: noviembre-2011
Ubicación: Morelia, Mich, México
Mensajes: 95
Antigüedad: 12 años, 5 meses
Puntos: 18
Respuesta: ajax consulta mysql no me va

jajaja pues es muy sencillo, podrias ponerte a buscar en google un poco o en el mismo foro.. buscar no cuesta mi amigo xD!

no se usar prototype pero con javascript puro, agregale un id a tu campo (tambien se puede con el name que ya tiene pero te lo pondre asi con id)

document.getElementById('id_de_micampo').value = "";
__________________
Que de Cosas - Tienda En linea México

La Batalla Por tu cuerpo - Dietas|Rutinas|Entrenamientos|Salud
  #7 (permalink)  
Antiguo 19/11/2011, 15:13
 
Fecha de Ingreso: febrero-2011
Mensajes: 64
Antigüedad: 13 años, 2 meses
Puntos: 0
Respuesta: ajax consulta mysql no me va

jajaja eso si es verdad, hay que leer un poco... o mejor dicho bastante pero la cuestion es esa ok recibo el mensaje nick ocupado lo coloco en el

<span id="comprobar_mensaje"></span>

pero deberia de borrar el textbox, y lo he colocado dentro de la funcion y no me va y lo hice asi como tu dices y me borra este o no este ocupado ese nick

Etiquetas: ajax, formulario, html, input, js, mysql, php
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 01:52.