php.de

Zurück   php.de > Webentwicklung > PHP Einsteiger > PHP Tipps 2008

 
 
LinkBack Themen-Optionen Thema bewerten
Alt 19.12.2008, 13:23  
Benutzer
 
Registriert seit: 26.10.2008
Beiträge: 45
ch.bielmeier befindet sich auf einem aufstrebenden Ast
Standard [Erledigt] xlm in php-Variablen

Ich hole mir von Google Maps die Koordinaten anhand einer Adresse.
Leider funktioniert der Code nicht. Es kommt die Fehlermeldung:
Warning: SimpleXMLElement::__construct() [function.SimpleXMLElement---construct]: Entity: line 1: parser error : Start tag expected, '<' not found in D:\php\... on line 17

Warning: SimpleXMLElement::__construct() [function.SimpleXMLElement---construct]: { in D:\php\... on line 17

Warning: SimpleXMLElement::__construct() [function.SimpleXMLElement---construct]: ^ in D:\php\... on line 17

Fatal error: Uncaught exception 'Exception' with message 'String could not be parsed as XML' in D:\php\reinicke\admin\test.php:17 Stack trace: #0 D:\php\...(17): SimpleXMLElement->__construct('{? "name": "Ge...') #1 {main} thrown in D:\php\... on line 17



PHP-Code:
    // Angabe deines Google Api Keys
    
$key ="ABC";
     
    
//Angabe der Adresse, von der die Koordinaten geholt werden sollen
    
$adresse="http://maps.google.com/maps/geo?q=Germany+".$_POST["plz"]."+".$_POST["ort"]."+".$_POST["anschrift"]."+".$_POST["hausnummer"]."&amp;output=xml&amp;key=$key";
     
    
//XML File von google holen
    
$urlinhalt=file_get_contents($adresse);
    
//XML File utf8 konvertieren
    
$urlinhalt utf8_decode ($urlinhalt);
    
print_r($urlinhalt);
    
/*
    //SimpleXMLElement Objekt erstellen
    $xml = new SimpleXMLElement($urlinhalt);
     
    //Koordinaten auslesen - trennen - und in 2 variablen speichern
    list($longitude, $latitude, $altitude) = explode (",",$xml->Response->Placemark->Point->coordinates);
     
    //Koordinaten ausgeben
    echo "Longitude: $longitude, Latitude: $latitude"; 
Wenn ich mit print_r($urlinhalt) abfrage bekomme ich zB sowas:

{ "name": "Germany 71640 Ludwigsburg Corneliusstrasse 31", "Status": { "code": 200, "request": "geocode" }, "Placemark": [ { "id": "p1", "address": "Corneliusstra? 31, 71640 Ludwigsburg, Germany", "AddressDetails": {"Country": {"CountryNameCode": "DE","CountryName": "Germany","AdministrativeArea": {"AdministrativeAreaName": "Baden-W?emberg","SubAdministrativeArea": {"SubAdministrativeAreaName": "Ludwigsburg","Locality": {"LocalityName": "Ludwigsburg","Thoroughfare":{"ThoroughfareNam e": "Corneliusstra? 31"},"PostalCode": {"PostalCodeNumber": "71640"}}}}},"Accuracy": 8}, "Point": { "coordinates": [ 9.2164575, 48.9002927, 0 ] } } ] }

Wie bekomme ich daraus die Koordinaten?

Vielen Dank
ch.bielmeier ist offline  
Sponsor Mitteilung
PHP Code Flüsterer

Registriert seit: 21.08.2005
Beiträge: 4682
PHP-Kenntnisse:
Fortgeschritten

Alt 19.12.2008, 13:25  
Moderator
 
Benutzerbild von cycap
 
Registriert seit: 13.02.2008
Beiträge: 6.816
PHP-Kenntnisse:
Fortgeschritten
cycap ist einfach richtig nettcycap ist einfach richtig nettcycap ist einfach richtig nettcycap ist einfach richtig nettcycap ist einfach richtig nett
Standard

Ähh hast du schonmal ein XML-File gesehen? Also so sieht das nich aus...
cycap ist offline  
Alt 19.12.2008, 13:32  
Erfahrener Benutzer
 
Benutzerbild von David
 
Registriert seit: 05.09.2007
Beiträge: 5.044
David wird schon bald berühmt werden
Standard

Das sieht nach JSON aus.
siehe JSON
und json_decode
David ist offline  
Alt 19.12.2008, 13:55  
Benutzer
 
Registriert seit: 26.10.2008
Beiträge: 45
ch.bielmeier befindet sich auf einem aufstrebenden Ast
Standard json_decode

Vielen Dank
Mit json_decode bekomme ich schon etwas, das wie ein Array aussieht.
Nur kann ich nicht auf die Variablen zugreifen
Wie kann ich die Ebenen "stdClass Object" abfragen?

Vielen Dank

PHP-Code:
stdClass Object
(
    [
name] => Germany 71640 Ludwigsburg Corneliusstrasse 31
    
[Status] => stdClass Object
        
(
            [
code] => 200
            
[request] => geocode
        
)

    [
Placemark] => Array
        (
            [
0] => stdClass Object
                
(
                    [
id] => p1
                    
[address] => Corneliusstra3171640 LudwigsburgGermany
                    
[AddressDetails] => stdClass Object
                        
(
                            [
Country] => stdClass Object
                                
(
                                    [
CountryNameCode] => DE
                                    
[CountryName] => Germany
                                    
[AdministrativeArea] => stdClass Object
                                        
(
                                            [
AdministrativeAreaName] => Baden-W?emberg
                                            
[SubAdministrativeArea] => stdClass Object
                                                
(
                                                    [
SubAdministrativeAreaName] => Ludwigsburg
                                                    
[Locality] => stdClass Object
                                                        
(
                                                            [
LocalityName] => Ludwigsburg
                                                            
[Thoroughfare] => stdClass Object
                                                                
(
                                                                    [
ThoroughfareName] => Corneliusstra31
                                                                
)

                                                            [
PostalCode] => stdClass Object
                                                                
(
                                                                    [
PostalCodeNumber] => 71640
                                                                
)

                                                        )

                                                )

                                        )

                                )

                            [
Accuracy] => 8
                        
)

                    [
Point] => stdClass Object
                        
(
                            [
coordinates] => Array
                                (
                                    [
0] => 9.2164575
                                    
[1] => 48.9002927
                                    
[2] => 0
                                
)

                        )

                )

        )


ch.bielmeier ist offline  
Alt 19.12.2008, 13:58  
Moderator
 
Benutzerbild von cycap
 
Registriert seit: 13.02.2008
Beiträge: 6.816
PHP-Kenntnisse:
Fortgeschritten
cycap ist einfach richtig nettcycap ist einfach richtig nettcycap ist einfach richtig nettcycap ist einfach richtig nettcycap ist einfach richtig nett
Standard

Na das ist halt nen Object mit Eigenschaften wäre übrigens bei SimpleXML auch nichts anderes gewesen, wenn du ihm XML zu fressen gegeben hättest

PHP-Code:
echo $object->name;
echo 
$object->status->code
cycap ist offline  
Alt 19.12.2008, 14:00  
Erfahrener Benutzer
 
Benutzerbild von David
 
Registriert seit: 05.09.2007
Beiträge: 5.044
David wird schon bald berühmt werden
Standard

Du kannst Dir auch ein Feld statt stdClass liefern lassen.
Wie das geht, steht auch auf der schon genannten Doku-Seite.
David ist offline  
Alt 19.12.2008, 14:13  
Benutzer
 
Registriert seit: 26.10.2008
Beiträge: 45
ch.bielmeier befindet sich auf einem aufstrebenden Ast
Standard Tausend Dank

Habe das True angefügt.

Tausend Dank an euch.
ch.bielmeier ist offline  
 


Themen-Optionen
Thema bewerten
Thema bewerten:

Forumregeln
Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are an
Gehe zu

Ähnliche Themen
Thema Autor Forum Antworten Letzter Beitrag
[Erledigt] Variablen überprüfen mit isset() Jumper PHP Tipps 2008 8 13.09.2008 13:36
Klasse statt globaler Variablen ecomeback PHP-Fortgeschrittene 6 15.07.2008 16:30
Templatesystem mit Funktionen und Variablen drin? BartTheDevil89 PHP Tipps 2008 6 01.07.2008 09:32
Übergeben von Variablen an in PHP eingebundenes Perl-Script shredder01 PHP Tipps 2008 3 04.04.2008 09:25
Datei mit Variablen so includen, dass Variablen nutzbar? BartTheDevil89 PHP Tipps 2008 6 22.01.2008 20:57
Variablen von Funktionen außerhalb nutzen Wing PHP Tipps 2008 5 28.09.2007 17:05
unerklärliches Leeren von Variablen KuShi PHP Tipps 2007 2 08.07.2007 15:19
Teil einer Variablen mit einer Variablen ersetzen ? simsalabim PHP Tipps 2007 11 20.03.2007 20:36
variablen aus textfile erzeugen (shellscript) noskule Server, Hosting und Workstations 2 19.07.2006 15:42
Variable aus Variablen zusammensetzen juhuwoorps PHP Tipps 2007 1 28.11.2005 21:50
Variablen übergeben bzw. auslesen? PHP Tipps 2005 4 30.01.2005 03:56
2 variablen in einem Value tag PHP Tipps 2005 17 26.01.2005 20:32
[Erledigt] register globals off bei variablen Variablen... PHP Tipps 2005 4 25.01.2005 17:50
Dynamisch erstellte Variablen ansprechen PHP Tipps 2004 2 08.08.2004 20:15
Variablen per adresse übergeben rocco PHP Tipps 2004 7 24.07.2004 12:03

Besucher kamen über folgende Suchanfragen bei Google auf diese Seite
simplexmlelement::__construct() [simplexmlelement.--construct]: entity: line 1: parser error : start tag expected, \'<\' not found in, parser error : start tag expected, \'<\' not found in, simplexmlelement::__construct(): entity: line 1: parser error : start tag expected, warning: simplexmlelement::__construct() [simplexmlelement.--construct]: entity: line 1: parser error : start tag expected, \'<\' not found in, warning: simplexmlelement::__construct(): entity: line 1: parser error : start tag expected, \'<\' not found in, entity: line 1: parser error : start tag expected, \'<\' not found, auf stdclass object zugreifen, start tag expected, \'<\' not found in entity, line: 1, php object(stdclass xml convert, start tag expected, \'<\' not found in entity, http://www.php.de/php-tipps-2008/49944-erledigt-xlm-php-variablen.html, variable variable php objekt adressieren variable namen, warning: simplexmlelement::__construct() [simplexmlelement.--construct]: entity: line 1: parser error : start tag expected, \'<\' not found, auf stdclass zugreifen, fatal error: uncaught exception \'exception\' with message \'string could not be parsed as xml\', entity: line 4: parser error : start tag expected, \'<\' not found in, auf elemente stdclass zugreifen, xlm parsed, \fatal error: start tag expected, \'<\'\, \fatal error: start tag expected\

Alle Zeitangaben in WEZ +2. Es ist jetzt 20:38 Uhr.




Powered by vBulletin® Version 3.7.2 (Deutsch)
Copyright ©2000 - 2012, Jelsoft Enterprises Ltd.
Search Engine Optimization by vBSEO 3.2.0
Aprilia-Forum, Aquaristik-Forum, Liebeskummer-Forum, Zierfisch-Forum, Geizkragen-Forum