Ankündigung

Einklappen
Keine Ankündigung bisher.

[Erledigt] Javascript mit JSON.parse()

Einklappen
X
  • Filter
  • Zeit
  • Anzeigen
Alles löschen
neue Beiträge

  • [Erledigt] Javascript mit JSON.parse()

    Hi all!

    habe ein kleines Javascript um Googlemaps geocoder.getLocations() zu testen. Komme aber mit dem JSON Objekt zurecht, um die Antwort zu parsen. Fehler steht in der Fehlerkonsole von Firefox und im Quelltext unter "Fehler:".

    Vielen Dank im voraus, jetzt mein test3.php:
    (deployed unter Test3 fr JS)

    PHP-Code:
    <?php include 'apikey.php' ?>
    <html>
        <head>
            <title> Test3 f&uuml;r JS</title>
            
       
            <script src="http://maps.google.com/maps?file=api&amp;v=2&amp;sensor=false&amp;key=<?php echo $api_key?>" type="text/javascript"></script>
            <script src="json2.js" type="text/javascript"></script>

            <script type="text/javascript">
                            
        
      var map, geocoder = null; 
      var vertices = [new GLatLng(1,1), new GLatLng(2,2)];

                
      function searchAddress() {
        // Meldung bei leerem Start anzeigen
        var response;
        var result;
        var searchText = vertices[0];
        var jsonArray;
        
        if (searchText == "") {
            alert('Kein zu suchenden Ort vorhanden.');
            return false;
        }

        // Geocoder nur einmal instanziieren
        if (!geocoder) geocoder = new GClientGeocoder();

        // Für Ansatzpunkt für eine Beschäftigt-Meldung sorgen
        //changeBodyClass('geocoder-idle', 'geocoder-busy');

        geocoder.getLocations(searchText,
            function (response) {
                if (!response) {
                        alert('Fehler bei der Adress-Geocodierung');
                } else {
                    
                     // Ergebnis schreiben:
                    
                    jsonArray =  JSON.parse(response);//Fehler: JSON.parse                
                    if (!jsonArray.Placemark) {
                        alert('data missing');
                         exit;
                    }
                
                    for (json in  jsonArray.Placemark) {
                        result = json.address;
                    }
                
                    document.getElementById('start-title').innerHTML = 'Start';
                        document.getElementById('start-data').innerHTML = result;      
                }
            }
        );
        return false;
    }
      

            
            </script>
        </head>
        <body onload="searchAddress()">
            <div id="line-info"> 
                    <p><span id="start-title">Start</span>: <span id="start-data"> </span></p> 
            </div> 
        </body>
    </html>
    PHP-Code:
    <?php
        
    // Diese Datei "apikey.php" ins Stammverzeichnis Ihres Servers 
        // $_SERVER['DOCUMENT_ROOT'] kopieren
        
        
    if (strtolower($_SERVER["HTTP_HOST"])=='localhost') {
            
    // Für localhost
            
    $api_key="copy and paste";
        } else {
            
    // Für öffentliche Seite
            
    $api_key="copy and paste";
        }
    ?>


  • #2
    alle Zeilen mit jsonArray und json ersetzen durch:

    Code:
    	
    place = response.Placemark[0];
    if (!place) {
        	alert('data missing');
     	exit;
    }
    
    result = place.address;

    Kommentar

    Lädt...
    X