Esta consulta es de hace más de un año. Tenga eso en cuenta.
Esta web utiliza cookies propias y de terceros para su funcionamiento. ¿Aceptas? Leer más
carlospherraz_f74d39
carlospherraz_f74d39
Pregunta cerrado

Hola a todos, Hace poco me ayudasteis a resolver una...

Hola a todos,

Hace poco me ayudasteis a resolver una duda sobre una petición a la base de datos con $.get(), que quedó resuelta aquí.

Ahora vuelvo a tener un problema curioso con ello y es que creo que los datos que obtengo de la base de datos no llegan a tiempo, me explico:

1. Hago la petición de datos y los guardo en un array:
$.get("index.php", {page:"verproyecto", feed:"12"},function(mensaje){
feedscondiciones.push(mensaje);
}, "json");

2. Paso el array a una función para hacer algunos cálculos:
var total= costetotal(lineas,feedscondiciones);

3. Obtengo un error que dice "feedscondiciones is undefined".

Lo curioso es que en la consola de JS pongo "feedscondiciones" y está perfecto, con los datos que yo necesitaba. Ejecuto esa parte del código paso a paso en el depurador y sale todo bien y no hay ningún problema. He probado a meter la llamada a la función dentro del callback y el resultado es el mismo: error sin depurador, todo perfecto con depurador...

¿Alguna idea?

Gracias de antemano!

España   12-05-2017 11:53:02   24-05-2017 10:28:24   1   [shawe]

Comentarios
shawe
Te importaría pegar una porción más grande de código en pastebin y pegarnos el enlace?

Yo hice algo similar y creo recordar que tuve un problema similar, así que puedo comparar lo que has hecho con lo hice.
carlospherraz_f74d39
Hola otra vez,

Este es el link a pastebin: https://pastebin.com/2FJf1Tb6

He puesto tres fragmentos separados (VIEW, CONTROLLER, MODEL), creo que será suficiente.

Gracias
shawe
Creo que se puede dar por hecho, pero tienes en algún lugar algo como esto?

var feedscondiciones;


Lo pregunto porqué veo que le fuerzas la longitud a 0 en el primer fragmento, y quiero entender que lo ideal es "redefinir" la variable para vaciarla por ejemplo con feedscondiciones = array(); o con el tipo que le hubieras indicado que sea.
carlospherraz_f74d39
Donde declaro las variables tengo:
var feedscondiciones=[];


Cuando le fuerzo a que su longitud sea 0 es porque necesito vaciarla sin recargar la página y leí en algunos tutoriales que la mejor forma era esa... pero ni idea de por qué.
shawe
No se si es la mejor forma, pero yo no lo había visto nunca así, en su lugar siempre lo he visto como:

feedscondiciones = [];
o con new

Aunque mirando esto, entiendo que si, lo que hiciste es correcto, pero explican que no reserva memoria nueva. Por si acaso, prueba a hacer ese cambio, a ver si deja de suceder.

En lo que te comenté que yo probé, recibía un JSON y el problema lo tenía a la hora de leerlo, pero veo que no tiene nada que ver, sino que en su momento no debía aclararme en la forma de parsearlo para pasarlo a array.
carlospherraz_f74d39
Lo he probado y nada, el problema es exactamente el mismo: funciona perfecto en el depurador pero no funciona fuera.
shawe
Estas es la estructura que yo utilicé: https://pastebin.com/ZQKyL0zf

El problema que te comenté que tuve era porque el JSON (concretamente un geoJSON en este caso) lo tenía que recibir LeafLet directamente como un parametro, si lo procesaba yo antes, dejaba de funcionar.
carlospherraz_f74d39
He probado con esto:
for (var i= 0; i<feedsid.length;i++){
$.get("index.php", {page:"verproyecto", feed:feedsid[i]},function(mensaje){
feedscondiciones.push(mensaje);
}, "json")
.done(function(){
var total= costetotal(lineas[i],feedscondiciones[i]);
costes_totales.push(total);
});
}

y sigue pasando igual... no sé.
shawe
Prueba esto, por casualidad, me ha tocado hacer algo similar:

https://pastebin.com/pZpvWxV1
-
[[Cerrado por inactividad]]

Cerrado
otros
Título Tipo
carlospherraz_f74d39 NeoRazorX
Buenas, no se si es una pregunta absurda, no controlo mucho la parte de herencia en PHP. En FS2017 tengo un controlador "class mi_clase extends fs_controller" y he intentado hacer otro...
cerrado 04-12-2018 10:50:28
Pregunta 1
carlospherraz_f74d39 carlospherraz_f74d39
Hola, ¿es posible pasarle al plugin los albaranes que quiero que imprima en un pdf programáticamente? Es decir, pasarle un array de ids o algo así. Gracias,
cerrado 01-02-2018 12:57:07
Pregunta 3
carlospherraz_f74d39 NeoRazorX
Hola a todos, ¿Qué campos son imprescindibles para crear albaranes desde un plugin propio? Desde phpmyadmin inserté un albarán con CIF, nombre de cliente y código de cliente y me daba un error...
cerrado 16-01-2018 13:44:06
Pregunta 5
carlospherraz_f74d39 carlospherraz_f74d39
Buenas, He actualizado a la última versión del núcleo y facturacion_base y me aparece este error: Error al ejecutar la consulta 0: Cannot change column 'codfamilia': used in a foreign key...
cerrado 05-12-2017 17:25:01
Pregunta 3
carlospherraz_f74d39
Hola a todos, Hace unos días consulté sobre un plugin de reparto que estoy haciendo, sigo con él y me gustaría hacer algo que no sé. Me explico: 1. En la página de cliente he añadido un...
cerrado 22-11-2017 18:36:20
Pregunta 0
carlospherraz_f74d39 carlospherraz_f74d39
Hola a todos, Estoy haciendo un plugin de reparto de mercancía y he llegado a un punto que no sé cómo enfocar, a ver si me explico: 1. En el plugin se pueden crear y eliminar "rutas",...
cerrado 16-11-2017 22:13:32
Pregunta 6
carlospherraz_f74d39 shawe
Hola a todos, Estoy creando un plugin en Facturascripts y me he bloqueado a causa de un error, os explico: Desde el archivo view, hago una petición $.get() al archivo controller para obtener en...
cerrado 27-03-2017 15:24:00
Pregunta 6
carlospherraz_f74d39 miguelajsmaps_103
Hola, he instalado Facturascripts con la intención de implantarlo en mi empresa y estoy haciendo pruebas con él. Para el uso que queremos darle necesitamos que los comerciales sólo puedan ver lo...
cerrado 12-01-2017 23:34:26
Pregunta 1