Visualizzazione dei risultati da 1 a 7 su 7
  1. #1
    Utente di HTML.it
    Registrato dal
    Oct 2013
    Messaggi
    83

    passaggio di variabili in un array..

    salve ho il seguente problema......



    var delay = 100;




    if (GBrowserIsCompatible()) {



    // ====== Create a Client Geocoder ======
    var geo = new GClientGeocoder();


    // ====== Array for decoding the failure codes ======
    var reasons=[];
    reasons[G_GEO_SUCCESS] = "Success";
    reasons[G_GEO_MISSING_ADDRESS] = "Missing Address: The address was either missing or had no value.";
    reasons[G_GEO_UNKNOWN_ADDRESS] = "Unknown Address: No corresponding geographic location could be found for the specified address.";
    reasons[G_GEO_UNAVAILABLE_ADDRESS]= "Unavailable Address: The geocode for the given address cannot be returned due to legal or contractual reasons.";
    reasons[G_GEO_BAD_KEY] = "Bad Key: The API key is either invalid or does not match the domain for which it was given";
    reasons[G_GEO_TOO_MANY_QUERIES] = "Too Many Queries: The daily geocoding quota for this site has been exceeded.";
    reasons[G_GEO_SERVER_ERROR] = "Server error: The geocoding request could not be successfully processed.";
    reasons[403] = "Error 403: Probably an incorrect error caused by a bug in the handling of invalid JSON.";

    // ====== Geocoding ======
    function getAddress(search, next) {
    geo.getLocations(search, function (result)
    {
    // If that was successful
    if (result.Status.code == G_GEO_SUCCESS) {
    // Lets assume that the first marker is the one we want
    var p = result.Placemark[0].Point.coordinates;
    var lat=p[1];
    var lng=p[0];
    // Display the results in XML format
    var xml = '&nbsp;&nbsp;&lt;marker address="' + search + '" lat="' +lat+ '" lng="' +lng+ '"&gt;<br>';
    document.getElementById("message").innerHTML += xml;
    }
    // ====== Decode the error status ======
    else {
    // === if we were sending the requests to fast, try this one again and increase the delay
    if (result.Status.code == G_GEO_TOO_MANY_QUERIES) {
    nextAddress--;
    delay++;
    } else {
    var reason="Code "+result.Status.code;
    if (reasons[result.Status.code]) {
    reason = reasons[result.Status.code]
    }
    var xml = '&nbsp;&nbsp;&lt;marker address="' + search + '" error="' +reason+ '"&gt;<br>';
    document.getElementById("message").innerHTML += xml;
    }
    }
    next();
    }
    );
    }


    var addresses = [
    "1060 West Addison Street, Chicago, IL",
    "99, rue de Rivoli, Paris 75001",
    "Oder, DE",
    "Piazza della Scala, Milano 20121",
    "London, UK",
    "1600 Pennsylvania Avenue, Washington, DC",
    "A totally bogus address"
    ];


    // ======= Global variable to remind us what to do next
    var nextAddress = 0;


    // ======= Function to call the next Geocode operation when the reply comes back


    function theNext() {
    if (nextAddress < addresses.length) {
    setTimeout('getAddress("'+addresses[nextAddress]+'",theNext)', delay);
    nextAddress++;
    } else {
    document.getElementById("message").innerHTML += "&lt;/markers&gt;";
    }
    }


    // ======= Call that function for the first time =======
    theNext();





    }

    // display a warning if the browser was not compatible
    else {
    alert("Sorry, the Google Maps API is not compatible with this browser");
    }


    // This Javascript is based on code provided by the
    // Community Church Javascript Team
    // http://www.bisphamchurch.org.uk/
    // http://econym.org.uk/gmap/


    //]]>
    </script>


    ho il problema di passaggio di valori nella variabile addresses in cui vorrei passare i luoghi che mi prendo da un database nel seguente modo:

    // Read the data from example.xml
    downloadUrl("database.php", function(doc) {
    var xmlDoc = xmlParse(doc);
    var markers = xmlDoc.documentElement.getElementsByTagName("marke r");
    for (var i = 0; i < markers.length; i++) {
    // obtain the attribues of each marker

    var lat = parseFloat(markers[i].getAttribute("lat"));
    var lng = parseFloat(markers[i].getAttribute("lng"));
    var point = new google.maps.LatLng(lat,lng);
    var name = markers[i].getAttribute("name");
    var luogo = markers[i].getAttribute("luogo");
    var indirizzo = markers[i].getAttribute("indirizzo");
    var context = markers[i].getAttribute("context");
    var data = markers[i].getAttribute("data");
    //document.write(markers.length);
    // create the marker

    addresses = [luogo];





    }
    //document.getElementById("slide_bar").innerHTML = side_bar_html;
    });



    passando i valori con """"addresses = [luogo];""""" non mi funziona... come mai

  2. #2
    Moderatore di Annunci siti web, Offro lavoro/collaborazione, Cerco lavoro L'avatar di cavicchiandrea
    Registrato dal
    Aug 2001
    Messaggi
    26,133
    Se stai usando le mappe di google xml leggi http://developers.google.com/maps/do...ion/geocoding/ e dovrai crearti una array che contenga tutti gli indirizzi
    Cavicchi Andrea
    Problemi con javascript, jquery, ajax clicca qui

  3. #3
    Utente di HTML.it
    Registrato dal
    Oct 2013
    Messaggi
    83
    ma io è quello che faccio.. solo che al posto di :

    var addresses = [
    "1060 West Addison Street, Chicago, IL",
    "99, rue de Rivoli, Paris 75001",
    "Oder, DE",
    "Piazza della Scala, Milano 20121",
    "London, UK",
    "1600 Pennsylvania Avenue, Washington, DC",
    "A totally bogus address"
    ];

    gli voglio passare i dati direttamente da database nel seguente modo :

    // Read the data from example.xml
    downloadUrl("database.php", function(doc) {
    var xmlDoc = xmlParse(doc);
    var markers = xmlDoc.documentElement.getElementsByTagName("marke r");
    for (var i = 0; i < markers.length; i++) {
    // obtain the attribues of each marker

    var lat = parseFloat(markers[i].getAttribute("lat"));
    var lng = parseFloat(markers[i].getAttribute("lng"));
    var point = new google.maps.LatLng(lat,lng);
    var name = markers[i].getAttribute("name");
    var luogo = markers[i].getAttribute("luogo");
    var indirizzo = markers[i].getAttribute("indirizzo");
    var context = markers[i].getAttribute("context");
    var data = markers[i].getAttribute("data");
    //document.write(markers.length);
    // create the marker

    addresses = [luogo];





    }
    //document.getElementById("slide_bar").innerHTML = side_bar_html;
    });

    solo che non so perchè non inserisce i dati che mi provengono da database...

  4. #4
    Moderatore di Annunci siti web, Offro lavoro/collaborazione, Cerco lavoro L'avatar di cavicchiandrea
    Registrato dal
    Aug 2001
    Messaggi
    26,133
    Sicuro che il database risponda correttamente? Qui var markers = xmlDoc.documentElement.getElementsByTagName("marke r");<-- c'è uno spazio corretto? (attenzione i nomi degli oggetti non possono contenere spazi)
    Cavicchi Andrea
    Problemi con javascript, jquery, ajax clicca qui

  5. #5
    Utente di HTML.it
    Registrato dal
    Oct 2013
    Messaggi
    83
    Ciao cavicchiandrea ho controllato

    sul codice è scritto bene
    var markers = xmlDoc.documentElement.getElementsByTagName("marke r");

  6. #6
    Moderatore di Annunci siti web, Offro lavoro/collaborazione, Cerco lavoro L'avatar di cavicchiandrea
    Registrato dal
    Aug 2001
    Messaggi
    26,133
    Quote Originariamente inviata da serino84 Visualizza il messaggio
    Ciao cavicchiandrea ho controllato

    sul codice è scritto bene
    var markers = xmlDoc.documentElement.getElementsByTagName("marke r");
    Sei un po' "ermetico" e questo non aiuta, prova a cambiare questa riga
    var markers = xmlDoc.documentElement.getElementsByTagName("marke r"); con questa
    var markers = xmlDoc.document.getElementsByTagName("marker"); se non dovesse funzionare posta il alla pagina demo pubblica (tuosito.xxxx/tuapaginademo.xxxx)
    :ciauz:
    Cavicchi Andrea
    Problemi con javascript, jquery, ajax clicca qui

  7. #7
    Utente di HTML.it
    Registrato dal
    Oct 2013
    Messaggi
    83
    è solo che quando faccio copia ed incolla mi fa saltare un carattere a marker....
    cmq non mi funziona...
    Ultima modifica di serino84; 01-10-2013 a 15:04

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.