Foros del Web » Programando para Internet » Javascript » Frameworks JS »

Problema al insertar datos con Ajax y PHP

Estas en el tema de Problema al insertar datos con Ajax y PHP en el foro de Frameworks JS en Foros del Web. Buenas, Bueno, de ajax se muy muy poco, me estoy iniciando, hablando claro, llevo dos dias como aquel que dice jeje. La cuestion es que ...
  #1 (permalink)  
Antiguo 29/05/2009, 12:05
Avatar de OsSk4R  
Fecha de Ingreso: octubre-2006
Ubicación: $this->home
Mensajes: 824
Antigüedad: 17 años, 6 meses
Puntos: 74
Problema al insertar datos con Ajax y PHP

Buenas,
Bueno, de ajax se muy muy poco, me estoy iniciando, hablando claro, llevo dos dias como aquel que dice jeje.

La cuestion es que tengo un sistemilla de comentarios (bueno, montandolo) y bueno, quiero insertar los datos del formulario de comentarios utilizando ajax (me ha enamorado )

El problema es que yo lo unico que se hacer con ajax es recargar una pagina dentro de otra, es sencillo, pero claro, como he dicho, ahora quiero insertar datos en mySQL

Comento...

El formulario de comentarios, lo voy a obviar un poco porque, eso no tiene nada especial, lo que si voy a poner es el principio del mismo para que veais como lo hago:
Código formulario:
Ver original
  1. <form name="nuevo_comentario" action="" onSubmit="PaginaEnviarComentarios(); return false">

En segundo lugar, el archivo ajax, que es donde seguro esta el problema, pues lo he hizo haciendo basandome en el que utilizo para recargar una pagina dentro de otra mediante GET, y buscando asi un poco de info por la web...:

Código ajax:
Ver original
  1. function objetoAjax(){
  2.  var xmlhttp=false;
  3.   try{
  4.    xmlhttp = new ActiveXObject("Msxml2.XMLHTTP");
  5.   }catch(e){
  6.    try {
  7.     xmlhttp = new ActiveXObject("Microsoft.XMLHTTP");
  8.    }catch(E){
  9.     xmlhttp = false;
  10.    }
  11.   }
  12.   if (!xmlhttp && typeof XMLHttpRequest!='undefined') {
  13.    xmlhttp = new XMLHttpRequest();
  14.   }
  15.   return xmlhttp;
  16. }
  17.  
  18. function PaginaEnviarComentarios(){
  19.  
  20.  divContenido = document.getElementById('contenido');
  21.  
  22.  ajax=objetoAjax();
  23.  
  24.   ajax.open("POST", "procesar_comentarios.php",true);
  25.  divContenido.innerHTML= '<img src="cargando.gif">';
  26.  ajax.onreadystatechange=function() {
  27.   if (ajax.readyState==4) {
  28.  
  29.    divContenido.innerHTML = ajax.responseText
  30.   }
  31.  }
  32.   ajax.send("id_usuario="+id_usuario+"&id_articulo="+id_articulo+"&comentario="+comentario)
  33.  
  34.  ajax.send(null)
  35. }

Y este el archivo procesar_comentarios, o sea, el que supuestamente recibe las variables y las inserta:
Código procesar_comentarios:
Ver original
  1. <?php
  2.  
  3. include "config.php";
  4.  
  5.  
  6.    $id_usuario=$_POST['id_usuario'] = trim($_POST['id_usuario']);
  7.    $id_articulo=$_POST['id_articulo'] = trim($_POST['id_articulo']);
  8.    $comentario=$_POST['comentario'] = trim($_POST['comentario']);
  9.  
  10.    
  11.  
  12. $InsertarComentario="INSERT INTO comentarios (id_usuario, id_articulo, comentario) values ('$id_usuario', '$id_articulo', '$comentario')";
  13. $resultadoInsertarComentario=mysql_query($InsertarComentario, $conexion) or die (mysql_error());
  14. if($id_usuario==NULL|$id_articulo==NULL|$comentario==NULL) {
  15.     echo "Exito!";
  16. }else{
  17.     echo "Error!!";
  18. }
  19.  
  20. ?>

Si, ya se que debo de mejorar la seguridad... pero bueno, eso mas adelante, lo estoy programando ... ¬¬

¿Cual es el error? que al darle a enviar, se me queda la imagen de cargnado todo el rato y luego no inserta nada en la base de datos

Eso es todo, una vez más, muchas gracias
  #2 (permalink)  
Antiguo 10/06/2009, 10:08
Avatar de OsSk4R  
Fecha de Ingreso: octubre-2006
Ubicación: $this->home
Mensajes: 824
Antigüedad: 17 años, 6 meses
Puntos: 74
Respuesta: Problema al insertar datos con Ajax y PHP

¿Nadie?

Llevo ya dias sin saber como, y estoy en lo mismo.

Si alguien al menos conocoe una pagina o algo donde lo enseñe, encantado, porque hasta el momento no he encontrado ninguna sencilla.

Gracias,
  #3 (permalink)  
Antiguo 10/06/2009, 10:28
 
Fecha de Ingreso: julio-2008
Ubicación: Alcañiz-Teruel-España
Mensajes: 182
Antigüedad: 15 años, 10 meses
Puntos: 5
Respuesta: Problema al insertar datos con Ajax y PHP

Buenas DeFFer

Tu problema puede estar aqui

Código javascript:
Ver original
  1. function PaginaEnviarComentarios(){
  2.  
  3.  
  4.  divContenido = document.getElementById('contenido');
  5.  ajax=objetoAjax();
  6.  ajax.open("POST", "procesar_comentarios.php",true);
  7.  //divContenido.innerHTML= '<img src="cargando.gif">';
  8.  ajax.onreadystatechange=function() {
  9.   if (ajax.readyState==4) {
  10.    divContenido.innerHTML = ajax.responseText
  11.   }else{
  12.    divContenido.innerHTML= '<img src="cargando.gif">';
  13.   }
  14.  }
  15.  
  16.   //ajax.send("id_usuario="+id_usuario+"&id_articulo="+id_articulo+"&comentario="+comentario)
  17.   ajax.send("id_usuario="+document.getElementById('id_usuario')+"&id_articulo="+document.getElementById('id_articulo')+"&comentario="+document.getElementById('comentario'))
  18.  
  19.  
  20.  ajax.send(null)
  21.  
  22. }

Ya dirás...

Saludos,
__________________
Si quieres puedes y si puedes debes. Imposible is nothing!!!
  #4 (permalink)  
Antiguo 17/06/2009, 12:10
Avatar de OsSk4R  
Fecha de Ingreso: octubre-2006
Ubicación: $this->home
Mensajes: 824
Antigüedad: 17 años, 6 meses
Puntos: 74
Respuesta: Problema al insertar datos con Ajax y PHP

No , sigue sin funcionar. me inserta los registros pero vacios

Muchas gracias,
  #5 (permalink)  
Antiguo 17/06/2009, 12:52
Avatar de gioramies  
Fecha de Ingreso: febrero-2008
Ubicación: Colombia
Mensajes: 217
Antigüedad: 16 años, 2 meses
Puntos: 14
Respuesta: Problema al insertar datos con Ajax y PHP

Hola. Porque no utilizas un framework ajax, son livianos y fáciles de usar. Saludos
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

SíEste tema le ha gustado a 1 personas




La zona horaria es GMT -6. Ahora son las 13:00.