[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