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