Foros del Web » Programando para Internet » Jquery »

como asignar a variable un geojson remoto

Estas en el tema de como asignar a variable un geojson remoto en el foro de Jquery en Foros del Web. tengo un geojson creado con php, como le asigno a una variable el geojson que obtengo remotamente?...
  #1 (permalink)  
Antiguo 11/07/2017, 14:51
 
Fecha de Ingreso: septiembre-2010
Mensajes: 1.853
Antigüedad: 13 años, 7 meses
Puntos: 6
como asignar a variable un geojson remoto

tengo un geojson creado con php, como le asigno a una variable el geojson que obtengo remotamente?
  #2 (permalink)  
Antiguo 13/07/2017, 10:37
Avatar de Alexis88
Philosopher
 
Fecha de Ingreso: noviembre-2011
Ubicación: Tacna, Perú
Mensajes: 5.552
Antigüedad: 12 años, 5 meses
Puntos: 977
Respuesta: como asignar a variable un geojson remoto

Mediante una petición asíncrona (AJAX, JSONP, CORS), ya tienes la mitad del trabajo hecho. Lo único que faltaría hacer es asignar el valor devuelto a una variable. Aquí puedes ver un ejemplo de cómo podrías proceder.

__________________
«Juro por mi vida y mi amor por ella, que jamás viviré para el provecho de otro hombre, ni le pediré a otro hombre que viva para el mío».

Ayn Rand
  #3 (permalink)  
Antiguo 14/07/2017, 10:22
 
Fecha de Ingreso: septiembre-2010
Mensajes: 1.853
Antigüedad: 13 años, 7 meses
Puntos: 6
Respuesta: como asignar a variable un geojson remoto

Alexis88 tengo el geojson
{ "type": "FeatureCollection", "features": [ { "type": "Feature", "layer": "Pluvi\u00f3metro", "geometry": { "type": "Point", "coordinates": [ -77.3385, 1.22767 ] }, "properties": { "nombre": "Pluvi\u00f3metro Mirador", "area": "Geoquimica", "metodologia": "Pluvi\u00f3metro", "icon": "http:\/\/192.168.102.33\/estacionesN\/img\/Pluviometro.png", "amenity": "bar" } }, { "type": "Feature", "layer": "Pluvi\u00f3metro", "geometry": { "type": "Point", "coordinates": [ -77.32183, 1.22183 ] }, .....................


le puedo hacer esto colocar el string var freeBus = { desde php
var freeBus = { "type": "FeatureCollection", "features": [ { "type": "Feature", "layer": "Pluvi\u00f3metro", "geometry": { "type": "Point", "coordinates": [ -77.3385, 1.22767 ] }, "properties": { "nombre": "Pluvi\u00f3metro Mirador", "area": "Geoquimica", "metodologia": "Pluvi\u00f3metro", "icon": "http:\/\/192.168.102.33\/estacionesN\/img\/Pluviometro.png", "amenity": "bar" } }, { "type": "Feature", "layer": "Pluvi\u00f3metro", "geometry": { "type": "Point", "coordinates": [ -77.32183, 1.22183 ] }, .....................


mira este ejemplo http://leafletjs.com/examples/geojson/example.html
  #4 (permalink)  
Antiguo 14/07/2017, 10:33
Avatar de Alexis88
Philosopher
 
Fecha de Ingreso: noviembre-2011
Ubicación: Tacna, Perú
Mensajes: 5.552
Antigüedad: 12 años, 5 meses
Puntos: 977
Respuesta: como asignar a variable un geojson remoto

Si deseas hacerlo todo en el mismo archivo, podrías hacer esto:
Código PHP:
Ver original
  1. <?php
  2. $geoJSON = '{"los datos"}';
  3. ?>
  4. <script type="text/javascript">
  5. var geoJSON = <?=$geoJSON?>;
  6. </script>

Aunque es una manera algo sucia de hacerlo. Preferiría tener el código PHP en un archivo externo y desde el archivo principal realizar una petición asíncrona (AJAX) para así obtener el valor en cuestión:
Código PHP:
Ver original
  1. //ejemplo.php
  2.  
  3. $geoJSON = '{"los datos"}';
  4. echo $geoJSON;
Código Javascript:
Ver original
  1. //Archivo principal
  2.  
  3. var ajax = new XMLHttpRequest();
  4.  
  5. ajax.open("GET", "ejemplo.php");
  6. ajax.addEventListener("load", function(){
  7.     this.status == 200 && (function(){
  8.         var geoJSON = this.responseText;
  9.        
  10.         //Aquí deben ir las instrucciones en donde utilizarás a la variable geoJSON
  11.     })();
  12. }, false);
  13. ajax.send();

Y si deseas utilizar a la variable por fuera de la función:
Código Javascript:
Ver original
  1. var ajax = new XMLHttpRequest(), geoJSON;
  2.  
  3. ajax.open("GET", "ejemplo.php", false);
  4. ajax.addEventListener("load", function(){
  5.     this.status == 200 && (geoJSON = this.responseText);
  6. }, false);
  7. ajax.send();
  8.  
  9. //Las demás instrucciones que utilicen a la variable geoJSON

__________________
«Juro por mi vida y mi amor por ella, que jamás viviré para el provecho de otro hombre, ni le pediré a otro hombre que viva para el mío».

Ayn Rand

Etiquetas: remoto, variable
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 07:56.