Ir al contenido


Foto

Retorno de ajax no comparable


  • Por favor identifícate para responder
1 respuesta en este tema

#1 KaelL

KaelL

    Newbie

  • Miembros
  • Pip
  • 1 mensajes

Escrito 03 mayo 2014 - 07:50

Buen dia a todos,

bueno, esta es la primera vez que uso un foro y soy nuevo en estas cuestiones de ajax y javascript, sean pacientes por favor.

mi problema radica en lo suiguiente: estoy haciendo una funcion javascript que hace un llamado ajax asincrono, la funcion php que retorna una actualizacion a la base de datos funciona bien. y retorna lo que yo le digo; el problema es cuando la respuesta llega al javascript.

esta respuesta esta de este estilo "ok/*respuesta segun la consulta"

en el javascript hago un -> var respuesta = ajax.responseText.split("/*")

pero cunado pregunto si respuesta[0] == 'ok' el javascript me da false, por lo tanto no entra al if y lo curioso es que tengo otras funciones con la misma estructura y funcionan perfectamente.

alguien tiene un idea de que pueda estar pasando???

agradezco la ayuda que me puedan prestar.

por si acaso dejo las funciones.

funcio javascript


delphi
  1. function actualizarMatIso(datos)
  2. {
  3. //alert("Escribir ajax de actualización -> "+datos);
  4. var nombre = datos.split('_');
  5. var cantidad = document.getElementById('cantidad_'+nombre[1]+'_'+nombre[2]+'_'+nombre[3]);
  6. var peso = document.getElementById('peso_'+nombre[1]+'_'+nombre[2]+'_'+nombre[3]);
  7. //alert("cantidad: "+cantidad.value+" y peso : "+peso.value);
  8. var ajax = new creaAJAX();
  9. ajax.open("POST", "tuberia_ajax.php?actualizarMatIso", true);
  10. ajax.setRequestHeader("content-type", "application/x-www-form-urlencoded");
  11. var datosMat = "isometrico="+nombre[1];
  12. datosMat = datosMat + "&material="+nombre[2];
  13. datosMat = datosMat + "&destino="+nombre[3];
  14. datosMat = datosMat + "&cantidad="+cantidad.value;
  15. datosMat = datosMat + "&peso="+peso.value;
  16. alert(datosMat);
  17. //return false;
  18. ajax.send(datosMat);
  19. ajax.onreadystatechange = function()
  20. {
  21. if(ajax.readyState == 4)
  22. {
  23. //alert("Respuesta ajax -> "+ajax.responseText);
  24. var mensaje = ajax.responseText.split("/*");
  25. alert(mensaje[1]);
  26. if(mensaje[0] == 'ok')
  27. {
  28. alert('Actualizando listado');
  29. isometricoMateriales(nombre[1]);
  30. }
  31. }
  32. };
  33. }



codigo php que responde


delphi
  1. if(isset($_GET['actualizarMatIso']))
  2. {
  3. //echo "ok/*".print_r($_POST,1);
  4. //exit;
  5. $sql = "UPDATE material_quantity SET cantidad = {$_POST['cantidad']}, peso = {$_POST['peso']}
  6. WHERE id_isometrico = '{$_POST['isometrico']}'
  7. AND id_material = '{$_POST['material']}'
  8. AND destino = '{$_POST['destino']}'";
  9. //echo "error/*".$sql;
  10. //exit;
  11. $consultor1->procesaSQL($sql);
  12. if(!$consultor1->errorTareas)
  13. {
  14. echo "ok/*Los datos han sido actualizados.";
  15. }
  16. else echo "error/*Se ha presentado un problema al actualizar los datos.";
  17. }


  • 0

#2 porfi.dev

porfi.dev

    Advanced Member

  • Miembros
  • PipPipPip
  • 183 mensajes
  • LocationMy House @ México

Escrito 13 mayo 2014 - 03:11

Utiliza la consola de JS Firefox, Chrome e incluso IE la tienen..


utiliza :

console.log(nombre_de_tu_variable); y de mostrara el contenido de la variable que quieres utilizar.
  • 0




IP.Board spam blocked by CleanTalk.