Me sale este error Ajax communication failed
Hola buen día.
Pues eso, tengo un formulario que al presionar un botón, hace un submit al formulario y manda a llamar a un archivo .php Pongo parte del código que hace la llamada
this.Base.getForm().submit({ method: 'POST', success: function(form,action){ mask.hide(); Ext.Msg.alert('Éxito',action.result.msg); }El archivo .php manda a llamar a varios procedimientos almacenados que realizan cálculos sobre BD y tablas de cientos de miles de registros. y me sale el error que menciono en el título del tema "Ajax communication failed". A qué se puede deber esto? cómo lo puedo corregir? Saludos y Gracias
Para eso necesitas usar phonegap, ya que este te provee apis para usar con el sencha touch y tener acceso al dispositivo.
Saludos
Hola muchachos, necesito saber urgente si sencha touch me permite la ejecución de procesos en background es decir que mi ap´plicación por ejemplo de geolocalizacion se siga ejecutando aun cuando no tenga el browser abierto gracias, si alguien sabe mi correo es jdonatoariza@gmail.com
Cuanto tiempo demora el proceso de cálculos sobre tu base de datos? es posible que se pierda la conexión, intenta aumentar el timeout.
Ext.Ajax.timeout = 90000;Por defecto está en 30000, intenta incrementarlo y nos cuentas. Aunque si el proceso demora mucho yo optaría por terminar la conexión y dejar el proceso en background corriendo en el servidor, luego solamente estar consultado para saber si ya terminó.
Hola Stock, gracias por la respuesta, voy a checar lo que me dices, ahora cómo puedo hacer lo segundo que mencionas?? dejar el proceso en el servidor y estar consultando??
Saludos y gracias
Hola Achury gracias por la respuesta, el detalle está que en el archivo .PHP puendo mandar a ejecutar hasta 7 procedimientos almacenados, si mando a ejecutar más de 1 al mismo tiempo sale el error, si sólo es uno, no hay problema, aunque ya me diste una idea de lo que puede estar pasando.
El lunes que vaya a la oficina, voy a revisar lo que se me acaba de ocurrir
Gracias
pues yo tenia el mismo problema, con el ingreso de unos datos, al final salio siendo la conexion a la base de datos, pues al no ser llamada la consulta se hacia eterna sobre la base de datos. te recomiendo que pruebes, puede que sea el mismo problema, que el php no este leyendo la variable de conexion con la base de datos.
archivo js
this.form.getForm().submit({ method: 'put', params: { extraParam: 'Extra params!', param2: 'Param 2' }, success: function(form,action){ mask.hide(); Ext.Msg.alert('Success',action.result.msg); },archivo php.
$_PUT = array(); if($_SERVER['REQUEST_METHOD'] == 'PUT') { parse_str(file_get_contents('php://input'), $_PUT); } $idvariable = $_PUT['idvariable']; $nombre_variable = $_PUT['nombre_variable']; if(!($con=@mysql_connect("localhost","root","123"))) { echo"Error al conectar a la base de datos"; } if (!@mysql_select_db("tu_base",$con)) { echo "error al seleccionar la base de datos"; } $query = "INSERT INTO nombre_tabla (idvariable,nombre_variable) VALUES ('$idvariable','$nombre_variable')"; mysql_query($query,$con); if(rand(0,1)===0){ //header('HTTP/1.1 201 Created success'); $info = array( 'success' => true, 'msg' => 'The record "'.$title.'" has been saved succesfully' ); }else{ //header('HTTP/1.1 501 Error saving the record'); $info = array( 'success' => false, 'msg' => 'There was an error saving the record' ); } echo json_encode($info);a mi me funciono para lo que fue insertar un registro, de un formulario. y me presentaba ese error cuando intente manejar los archivos por separados osea la conexion y las operaciones sobre la base de datos, a un sigo intentando pero pues esto te puede ayudar a solucionarlo. espero te sea de ayuda.
Depende mucho de la tecnología que estés utilizando en el servidor, pero tendrías que crear un hilo (thread) o algo semejante.
Saludos
¿Conoces a alguien que pueda responder esta pregunta? Comparte el link en Twitter o Facebook
Es necesario registrarse para poder participar en el foro! Si ya tienes una cuenta puedes entrar y comentar en este foro.