Foros del Web » Programando para Internet » Javascript »

Problema con ajax? o la parte que corresponde a javascript

Estas en el tema de Problema con ajax? o la parte que corresponde a javascript en el foro de Javascript en Foros del Web. Buenas... Estoy con un proyecto personal que incluye php y mysql. Soy nuevo y no entiendo mucho. Resulta que busque un codigo de "AJAX" para ...
  #1 (permalink)  
Antiguo 03/11/2011, 18:17
Avatar de rafa_yael  
Fecha de Ingreso: mayo-2010
Ubicación: Zapotlanejo, Mexico
Mensajes: 54
Antigüedad: 14 años
Puntos: 4
Problema con ajax? o la parte que corresponde a javascript

Buenas...

Estoy con un proyecto personal que incluye php y mysql. Soy nuevo y no entiendo mucho. Resulta que busque un codigo de "AJAX" para hacer unas consultas sin recargar página. y me encontre con este código.


Código Javascript:
Ver original
  1. function ajax (texto){
  2.             alert(texto);
  3.             if (texto=="")
  4.               {
  5.               document.getElementById("prueba").innerHTML="VAcio";
  6.               return;
  7.               }
  8.              if (window.XMLHttpRequest)
  9.               {// code for IE7+, Firefox, Chrome, Opera, Safari
  10.               xmlhttp=new XMLHttpRequest();
  11.               } else
  12.                   {// code for IE6, IE5
  13.                   xmlhttp=new ActiveXObject("Microsoft.XMLHTTP");
  14.                   }
  15.             xmlhttp.onreadystatechange = function()
  16.                 if (xmlhttp.readyState==4 && xmlhttp.status==200)
  17.                 {
  18.                 document.getElementById("prueba").innerHTML=xmlhttp.responseText;
  19.                 }
  20.            
  21.            
  22.             xmlhttp.open("GET","ajaxconsultaingresardatos.php?q="+texto,true);
  23.             xmlhttp.send();

Pero no me funciona. Parece ser que el error esta en la linea 15. Pero no se a que se deba. Esto lo se pues comentaba secciones del codigo para ver hasta donde dejaba de correr, y fue en esta linea que practicamente trono.

Se supone que me tiene que pasar unos datos por medio de GET a una pagina php que realizara la consulta SQL. Pero no ha funkado XS. Espero me puedan ayudar.
  #2 (permalink)  
Antiguo 03/11/2011, 18:53
Avatar de DataLore  
Fecha de Ingreso: junio-2008
Mensajes: 58
Antigüedad: 15 años, 10 meses
Puntos: 5
Respuesta: Problema con ajax? o la parte que corresponde a javascript

Ya del vamos hay algo fuera de orden ahi. Y falta alguna que otra llave de scope.

El orden correcto sería:

Código Javascript:
Ver original
  1. ....
  2. //se crea la conexion
  3. xmlhttp.open("GET","ajaxconsultaingresardatos.php?q="+texto,true);              
  4. //se envia el pedido
  5. xmlhttp.send();
  6. //se procesa la response
  7. xmlhttp.onreadystatechange = function() {
  8.         if (xmlhttp.readyState==4 && xmlhttp.status==200)      {
  9.               document.getElementById("prueba").innerHTML=xmlhttp.responseText;
  10.           }
  11. ....
  #3 (permalink)  
Antiguo 03/11/2011, 22:11
Avatar de DrFaust  
Fecha de Ingreso: septiembre-2011
Ubicación: Buenos Aires
Mensajes: 308
Antigüedad: 12 años, 8 meses
Puntos: 87
Respuesta: Problema con ajax? o la parte que corresponde a javascript

Te recomiendo que estudies muy bien el código que encontraste, lo mires y lo vuelvas a mirar hasta que se te quede grabado... Y luego uses jQuery.

jQuery es una librería de JavaScript que tiene una infinidad de utilidades prácticamente indispensables para trabajar con este lenguaje. Entre ellas, hay varias funciones de AJAX que te van a hacer la vida muy fácil. Un ejemplo básico:

$.get("contenido.php?id=1", function(r) {alert("El contenido es: " + r;});

... Y ya. Una línea de código.

Es importante que conozcas la lógica de AJAX en profundidad, y por eso te recomiendo que analices el código que posteaste y entiendas qué hace cada cosa. Pero también es importante complicarse la existencia lo menos posible, para poder invertir tu tiempo y tu atención en otros aspectos más importantes del proyecto. No tiene sentido escribir cien líneas de código si podés hacer lo mismo con diez.

Podés bajarte jQuery de: http://jquery.com/
__________________
Desarrollador web profesional
  #4 (permalink)  
Antiguo 03/11/2011, 22:57
Avatar de rafa_yael  
Fecha de Ingreso: mayo-2010
Ubicación: Zapotlanejo, Mexico
Mensajes: 54
Antigüedad: 14 años
Puntos: 4
Respuesta: Problema con ajax? o la parte que corresponde a javascript

Cita:
Iniciado por DataLore Ver Mensaje
Ya del vamos hay algo fuera de orden ahi. Y falta alguna que otra llave de scope.

El orden correcto sería:

Código Javascript:
Ver original
  1. ....
  2. //se crea la conexion
  3. xmlhttp.open("GET","ajaxconsultaingresardatos.php?q="+texto,true);              
  4. //se envia el pedido
  5. xmlhttp.send();
  6. //se procesa la response
  7. xmlhttp.onreadystatechange = function() {
  8.         if (xmlhttp.readyState==4 && xmlhttp.status==200)      {
  9.               document.getElementById("prueba").innerHTML=xmlhttp.responseText;
  10.           }
  11. ....

Hoo, creo que las horas que pase tratando de resolverlo me atontaron XD. Gracias por la ayuda.

Cita:
Iniciado por DrFaust Ver Mensaje
Te recomiendo que estudies muy bien el código que encontraste, lo mires y lo vuelvas a mirar hasta que se te quede grabado... Y luego uses jQuery.

jQuery es una librería de JavaScript que tiene una infinidad de utilidades prácticamente indispensables para trabajar con este lenguaje. Entre ellas, hay varias funciones de AJAX que te van a hacer la vida muy fácil. Un ejemplo básico:

$.get("contenido.php?id=1", function(r) {alert("El contenido es: " + r;});

... Y ya. Una línea de código.

Es importante que conozcas la lógica de AJAX en profundidad, y por eso te recomiendo que analices el código que posteaste y entiendas qué hace cada cosa. Pero también es importante complicarse la existencia lo menos posible, para poder invertir tu tiempo y tu atención en otros aspectos más importantes del proyecto. No tiene sentido escribir cien líneas de código si podés hacer lo mismo con diez.

Podés bajarte jQuery de: http://jquery.com/
Si muchas gracias lo tomare en cuenta. Estuve estudiando el código e investigando para que es cada cosa pero como bien dices, es importante conocer la lógica de ajax, y pues si apenas conozco su existencia. xD

Y tambien gracias por el dato de la libreria.

Etiquetas: ajax, funcion, html, 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 14:26.