[Php-avanzado] consulta jquery para la tesis
Cesar Gimenez Lascano
cesargimenezlascano en gmail.com
Lun Jun 3 13:40:55 ART 2013
Uh! perdón a mi por el error de tipeo!! creo que me traiciono el
subconciente porque esta implementacion se me complico
bastante....disculpas...
El 3 de junio de 2013 12:37, Leonardo Tadei - Pegasus Tech Supply <
leonardot en pegasusnet.com.ar> escribió:
> Hola Cesar,
>
> perdón por el error de tipeo.
> Debería decir "devolverlo ya caRgado desde el servidor"
>
> Salu2
>
>
> El dom, 02-06-2013 a las 11:28 -0300, Cesar Gimenez Lascano escribió:
> > Gracias Leo! disculpame, a que te referís con "devolverlo ya cagado
> > desde el servidor"? a guardar los datos recibidos de las llamadas a
> > las apis en la base de datos? gracias x la ayuda. saludos!!
> >
> >
> > El 1 de junio de 2013 19:15, Leonardo Tadei - Pegasus Tech Supply
> > <leonardot en pegasusnet.com.ar> escribió:
> > Cesar:
> >
> > Quiero volver a una cuestión que Matías platea muy
> > correctamente: no
> > tiene sentido hacer varias llamadas AJAX en un bucle, porque
> > si te hace
> > falta todo esto, devolvelo ya cargado desde el servidor y
> > listo!
> > Más allá del problema de sintaxis que haya, no es un
> > uso razonable de
> > AJAX, ya que es más lento todo esto que cargar los valores
> > desde el
> > principio.
> >
> > Acordate del "principio de programación KISS" !!!
> >
> >
> >
> > El sáb, 01-06-2013 a las 15:52 -0300, Cesar Gimenez Lascano
> > escribió:
> > > la del ultimo registro de la tabla de la base de datos
> > >
> > >
> > > El 1 de junio de 2013 15:51, Cesar Gimenez Lascano
> > > <cesargimenezlascano en gmail.com> escribió:
> > > perdón mati, me adelante. El popup muestra bien la
> > info de la
> > > segunda llamada, pero de la primera muestra en todos
> > los
> > > popups la misma info.
> > >
> > >
> > > El 1 de junio de 2013 15:36, Cesar Gimenez Lascano
> > > <cesargimenezlascano en gmail.com> escribió:
> > >
> > > Genio Matias!!! anduvo de 10!!!! ahí entendí
> > cual era
> > > mi error, muchas gracias de verdad.Ya que
> > estoy y sin
> > > animo de abusar quisiera preguntarte,
> > necesito tmb que
> > > el popup muestre información de una llamada
> > ajax mas,
> > > donde encajaría en el nuevo código que me
> > pasaste?
> > > abrazo!!!
> > >
> > >
> > > El 1 de junio de 2013 14:46, Matias Gea
> > > <matigea en gmail.com> escribió:
> > >
> > > El problema lo tenés, probablemente
> > acá:
> > > var marker = new L.Marker(location,
> > {title:
> > > nombre, icon: myIcon});// creo el
> > marcador
> > > //llamo a la api de foursquare
> > >
> > $.getJSON('https://api.foursquare.com/v2/venues/'+fourID
> >
> +'/tips?sort=recent&limit=2&client_id=315YX0EUHY5VW5SFVCPIBMMVYTSNCXNML20AHEEDL1Q2TMEE&client_secret=HOJHGWETZPZYXLS2NYSPMUO0A4WO2UQCUHVWEAXQWAOWROZ2',
> function(data2) {
> > > var tip1 =
> > data2.response.tips.items[0].text;
> > > var tip2 =
> > data2.response.tips.items[1].text;
> > > marker.bindPopup("<div
> > class='popup'>" +
> > > "<span class='titulo'>"+ nombre
> > +"</span>"
> > > +"</br>"+ dir +"</br>"+ tel
> > +"</br>"+ tip1
> > > +"</br>"+ tip2 + "</div>",
> > {maxWidth:
> > > '600'}); // creo el popup
> > > });
> > >
> > >
> > > Fijate que estás declarando una
> > variable
> > > marker (en el for) y la utilizás
> > para
> > > relacionar el popup después que se
> > resuelve el
> > > request asincrónico. En ese momento
> > (cuando
> > > terminan los requests) ya finalizó
> > hace rato
> > > el for y marker queda con el útlimo
> > valor.
> > > Tenés que hacer que marker sea
> > constante en la
> > > función onSuccess del getJSON, así:
> > >
> > >
> > > var marker = new L.Marker(location,
> > {title:
> > > nombre, icon: myIcon});// creo el
> > marcador
> > > //llamo a la api de foursquare
> > > $.getJSON(
> > >
> > 'https://api.foursquare.com/v2/venues/'+fourID
> > >
> >
> +'/tips?sort=recent&limit=2&client_id=315YX0EUHY5VW5SFVCPIBMMVYTSNCXNML20AHEEDL1Q2TMEE&client_secret=HOJHGWETZPZYXLS2NYSPMUO0A4WO2UQCUHVWEAXQWAOWROZ2',
> > > (function(marker){
> > > return function(data2) {
> > > var tip1 =
> > data2.response.tips.items[0].text;
> > > var tip2 =
> > data2.response.tips.items[1].text;
> > > marker.bindPopup("<div
> > class='popup'>" +
> > > "<span class='titulo'>"+ nombre
> > +"</span>"
> > > +"</br>"+ dir +"</br>"+ tel
> > +"</br>"+ tip1
> > > +"</br>"+ tip2 + "</div>",
> > {maxWidth:
> > > '600'}); // creo el popup
> > > }
> > > })(marker)
> > > );
> > >
> > >
> > >
> > >
> > > Probalo y contame.
> > >
> > >
> > > Saludos!
> > >
> > >
> > >
> > >
> > > El 1 de junio de 2013 14:39, Cesar
> > Gimenez
> > > Lascano
> > <cesargimenezlascano en gmail.com>
> > > escribió:
> > >
> > > Hola Matias!! mil gracias x
> > la
> > > respuesta!!, te envío
> > directamente
> > > toda la pagina, espero se
> > entienda el
> > > código. Lo que ves son
> > varios links
> > > (alojamientos, comercios,
> > etc) que al
> > > hacer click llaman a una
> > función js
> > > (getAlojs(), getComes(), etc
> > ) que
> > > trae datos desde la base de
> > datos
> > > (primer llamada ajax) y con
> > ellos
> > > crear una capa de marcadores
> > y sus
> > > popups y agrega todo a un
> > mapa, con la
> > > ayuda de una biblioteca js
> > de mapping
> > > que se llama leaflet. La
> > segunda
> > > llamada ajax (la que esta
> > dentro del
> > > for) se realiza a un
> > servidor remoto
> > > (la API del sitio foursquare
> > en este
> > > caso), los popups contienen
> > > información proveniente de
> > ambas
> > > llamadas, por eso no veo
> > como asociar
> > > su creación a un evento
> > onClick y los
> > > cacheo a todos. Fijate que
> > las dos
> > > llamadas ajax las estoy
> > probando solo
> > > en la función getResto(), el
> > resto de
> > > los popups muestra solo info
> > de la
> > > base de datos y anda a la
> > perfección.
> > > Espero puedas ayudarme,
> > saludos!!!
> > >
> > >
> > > El 1 de junio de 2013 14:04,
> > Cesar
> > > Gimenez Lascano
> > >
> > <cesargimenezlascano en gmail.com>
> > > escribió:
> > >
> > > Hola leo! gracias x
> > la
> > > respuesta!.
> > > Efectivamente
> > $.getJSON() hace
> > > una llamada AJAX
> > asincrónica
> > > utilizando el
> > framework JQuery
> > > (linkeo a
> > documentación
> > > oficial x si sirve).
> > Estuve
> > > revisando mejor el
> > resultado y
> > > en realidad me
> > muestra el
> > > ultimo popup, así
> > que puede
> > > estar sucediendo lo
> > que
> > > comentas del bucle,
> > lo del
> > > nombre igual de
> > variables no
> > > es el problema, si.
> > >
> > >
> > > El 31 de mayo de
> > 2013 20:52,
> > > Leonardo Tadei -
> > Pegasus Tech
> > > Supply
> > >
> > <leonardot en pegasusnet.com.ar>
> > > escribió:
> > >
> > > Ufff...
> > faltan muchos
> > > detalles
> > para empezar
> > > a adivinar
> > qué puede
> > > estar
> > >
> > > pasando!
> > >
> > > Asumiendo
> > que
> > > $.getJSON()
> > hace algún
> > > tipo de
> > llamada AJAX
> > > usando el
> > > framework
> > JQuery, y
> > > asumiendo
> > que las
> > > llamadas
> > sean
> > >
> > asincrónicas, lo que
> > > puede
> > estarte pasando
> > > es que las
> > llamadas a
> > > $.getJSON()
> > adentro
> > > del
> > > bucle no
> > alcancen a
> > > terminar
> > antes de que
> > > vuelva a ser
> > invocada
> > > en el
> > > próximo
> > ciclo.
> > >
> > > Si lo que se
> > ve es la
> > > primera en
> > vez de la
> > > última,
> > supongo que es
> > > por la
> > >
> > implementación de la
> > > biblioteca,
> > pero
> > > habría que
> > destriparla
> > > para estar
> > > seguros.
> > >
> > > No debe ser
> > el
> > > problema,
> > pero que
> > > ambas
> > funciones
> > > anónimas
> > usen como
> > > parámetro la
> > variable
> > > "data" a mi
> > de eriza
> > > los pelos de
> > la nuca,
> > > por el
> > > ámbito de
> > las
> > > variables en
> > > JavaScript
> > respecto de
> > > las
> > funciones, que es
> > > mucho más
> > amplio que
> > > en otros
> > lenguajes.
> > >
> > > Espero que
> > alguien que
> > > sepa más que
> > yo de
> > > JQuery nos
> > ayude a
> > > entender
> > > qué es lo
> > que pasa.
> > >
> > >
> > > El vie,
> > 31-05-2013 a
> > > las 19:56
> > -0300, Cesar
> > > Gimenez
> > Lascano
> > > escribió:
> > > > Hola,
> > tengo un
> > > problema con
> > un código
> > > para armar
> > una capa de
> > > >
> > marcadores, con su
> > > respectiva
> > ventana de
> > > información
> > (popups),
> > > y
> > > > agregarla
> > a un mapa.
> > > El código
> > como está
> > > crea todos
> > los
> > > marcadores
> > > > pero solo
> > el primer
> > > popup. Es
> > que la
> > > función data
> > del
> > > segundo
> > llamado
> > > > $.getJSON
> > se ejecuta
> > > solo una
> > vez? o el
> > > mismo
> > llamado?. Aclaro
> > > que el
> > > > popup se
> > carga de
> > > información
> > de las dos
> > > fuentes json
> > por eso
> > > esta uno
> > > > dentro del
> > otro.
> > > Espero
> > puedan darme
> > > una mano!!!
> > > >
> > > >
> > > >
> > $.getJSON("carga
> > > datos",
> > function
> > > (data) {
> > > >
> > for (var i
> > > = 0; i <
> > data.length;
> > > i++) {
> > > >
> > var
> > > nombre =
> > >
> > data[i].nombre;
> > > >
> > var dir
> > > =
> > data[i].direccion;
> > > >
> > >
> > $.getJSON("cargar
> > > otros
> > datos",
> > >
> > function(data) {
> > > > var var1=
> > data.var1;
> > > > var var2=
> > data.var2;
> > > > //crear
> > popup
> > > > });
> > > >
> > //crear
> > > marcador
> > > >
> > > //agregar
> > marcador a
> > > la capa
> > > >
> > } // fin
> > > del for
> > > >
> > >
> > }).complete(function() {
> > > > //agregar
> > capa al
> > > mapa
> > > > });
> > > >
> > >
> > > >
> > >
> > _______________________________________________
> > > >
> > Php-avanzado mailing
> > > list
> > > >
> > >
> > Php-avanzado en pato2.fi.mdp.edu.ar
> > > >
> > >
> > http://www3.fi.mdp.edu.ar/cgi-bin/mailman/listinfo/php-avanzado
> > >
> > > --
> > > Leonardo
> > Tadei
> > >
> > leonardot en pegasusnet.com.ar
> > > Web:
> > >
> > http://leonardo.tadei.com.ar
> > > Firma
> > pública:
> > >
> > http://www.pegasusnet.com.ar/LeonardoTadei-public.key
> > >
> > >
> > _______________________________________________
> > > Php-avanzado
> > mailing
> > > list
> > >
> > Php-avanzado en pato2.fi.mdp.edu.ar
> > >
> > http://www3.fi.mdp.edu.ar/cgi-bin/mailman/listinfo/php-avanzado
> > >
> > >
> > >
> > >
> > >
> > >
> > >
> > _______________________________________________
> > > Php-avanzado mailing list
> > >
> > Php-avanzado en pato2.fi.mdp.edu.ar
> > >
> > http://www3.fi.mdp.edu.ar/cgi-bin/mailman/listinfo/php-avanzado
> > >
> > >
> > >
> > >
> > > --
> > > Matias Fernando Gea
> > > matigea en gmail.com
> > > http://www.mfgea.com.ar
> > >
> > >
> > _______________________________________________
> > > Php-avanzado mailing list
> > > Php-avanzado en pato2.fi.mdp.edu.ar
> > >
> > http://www3.fi.mdp.edu.ar/cgi-bin/mailman/listinfo/php-avanzado
> > >
> > >
> > >
> > >
> > >
> > >
> > > _______________________________________________
> > > Php-avanzado mailing list
> > > Php-avanzado en pato2.fi.mdp.edu.ar
> > >
> > http://www3.fi.mdp.edu.ar/cgi-bin/mailman/listinfo/php-avanzado
> >
> > --
> > Leonardo Tadei
> > leonardot en pegasusnet.com.ar
> > Web: http://leonardo.tadei.com.ar
> > Firma pública:
> > http://www.pegasusnet.com.ar/LeonardoTadei-public.key
> >
> > _______________________________________________
> > Php-avanzado mailing list
> > Php-avanzado en pato2.fi.mdp.edu.ar
> > http://www3.fi.mdp.edu.ar/cgi-bin/mailman/listinfo/php-avanzado
> >
> >
> >
> > _______________________________________________
> > Php-avanzado mailing list
> > Php-avanzado en pato2.fi.mdp.edu.ar
> > http://www3.fi.mdp.edu.ar/cgi-bin/mailman/listinfo/php-avanzado
>
> --
> Leonardo Tadei
> leonardot en pegasusnet.com.ar
> Web: http://leonardo.tadei.com.ar
> Firma pública: http://www.pegasusnet.com.ar/LeonardoTadei-public.key
>
> _______________________________________________
> Php-avanzado mailing list
> Php-avanzado en pato2.fi.mdp.edu.ar
> http://www3.fi.mdp.edu.ar/cgi-bin/mailman/listinfo/php-avanzado
>
------------ próxima parte ------------
Se ha borrado un adjunto en formato HTML...
URL: <http://www3.fi.mdp.edu.ar/pipermail/php-avanzado/attachments/20130603/c371e9a6/attachment-0001.html>
Más información sobre la lista de distribución Php-avanzado