Visualizzazione dei risultati da 1 a 4 su 4
  1. #1
    Utente di HTML.it
    Registrato dal
    Jul 2008
    Messaggi
    6

    Googlemaps non riesco a chiamare funzione

    Ho una pagina PHP che da un elenco ne chiama una seconda che dovrà mostrare la mappa google. quando questa seconda pagina viene chiamata la faccio nella forma nomefile.php&tabella=nometabella.

    Il problema è che questa seconda pagina contiene le funzioni delle api scritte in html e non riesco a passargli la variabile che ricevo con il metodo _get["tabella"]

    questa è la funzione


    codice:
     function load() {
          if (GBrowserIsCompatible()) {
            var map = new GMap2(document.getElementById("map"));
            map.addControl(new GSmallMapControl());
            map.addControl(new GMapTypeControl());
            map.setCenter(new GLatLng(45.4686, 9.1893), 13);
                                             
            GDownloadUrl("creoxml.php?tabella=" + $mytable   , function(data) {
              var xml = GXml.parse(data);
              var markers = xml.documentElement.getElementsByTagName("marker");
              for (var i = 0; i < markers.length; i++) {
                var name = markers[i].getAttribute("name");
                var address = markers[i].getAttribute("address");
                var type = markers[i].getAttribute("type");
                var point = new GLatLng(parseFloat(markers[i].getAttribute("lat")),
                                        parseFloat(markers[i].getAttribute("lng")));
                var numero = i + 1;
                //var marker = createMarker(point, name, address, type, numero);
                var marker = createMarker(point, name, address, type, numero);
                map.addOverlay(marker);
              }
            });
          }
        }
    La linea interessata è quella rossa la variabile $mytable è sicuramente dichiarata di tipo globale e verificata, sicuramente quel $mytable è sbagliato ma l'ho lasciato per rendere l'dea di cosa cerco di fare.
    Ho provatao ad inserire anche in quella linea una dichiarazione PHP ma si pianta ed ho dedotto che non posso integrare php in una funzione HTML, per favore datemi una mano.

    Grazie Carlo

  2. #2
    Utente di HTML.it
    Registrato dal
    Jul 2008
    Messaggi
    6
    Lo avevo già fatto ho comunque riprovato il tuo secondo esempio ma così non compare più neppure la mappa, credo che blocchi la function.

    Comunque ieri ho detto una cavolata quella funzione è in Jscript e non HTML e mi ci devo interfacciare di conseguenza, come è un altro discorso, forse tu....

    Comunque userò Goo... per documentarmi meglio.

    Grazie e ciao Carlo

  3. #3
    Utente di HTML.it
    Registrato dal
    Jul 2008
    Messaggi
    6
    la variabile $mytable contiene una stringa con il nome di una tabella es. p_duomo_loreto.

    La variabile è correttamente configurata infatti a scopo di debug ho inserito

    in una sezione il seguente codice php

    global $mytable;
    $mytable = $_GET["tabella"] ;
    print $mytable;

    e sullo schermo appare il nome della tabella

    se lancia il noto file diretamente dalla barra dell'indirizzo di FF con http://www.myurl/myfolder/creoxml.ph...p_duomo_loreto

    lo script viene eseguito e sulla pagina del browser appare il codice xml da questo creato.

    E' certo un problema di "interfaccia" di passaggio della variabile dalla pagina php alla funzione Js load() contenuta nello stesso file.

  4. #4
    Utente di HTML.it
    Registrato dal
    Jul 2008
    Messaggi
    6
    RISOLTO!!!!!

    map.setCenter(new GLatLng(45.4686, 9.1893), 13);
    var my_table;
    my_table = "<?php echo $_GET['tabella'];?>" ;
    GDownloadUrl("creoxml.php?tabella=" + my_table , function(data) {
    var xml = GXml.parse(data);


    Così gira, grazie a tutti.

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.