• Willkommen im Geoclub - dem größten deutschsprachigen Geocaching-Forum. Registriere dich kostenlos, um alle Inhalte zu sehen und neue Beiträge zu erstellen.

PHP und DOM

Schnueffler

Geoguru
Ein Hallo an alle Programmierer unter Euch

Kennt sich jemand von Euch mit PHP und dort speziell mit dem DOM-Objekt aus? Ich suche eine Möglichkeit per DOM auf die Daten einer XML-Datei zuzugreifen und damit auch die Daten, die in einem Namespace stehen, lesen zu können.

Hat da jemand ne Idee, wie ich das machen kann? Schreibt mir doch einfach ne PN und ich versuche Euch mal das genaue Problem zu erklären.


Alle anderen, die keine Ahnung von PHP und DOM haben, halten einfach die Finger bei sich und antworten hier nicht. Das gilt besonders für RS!!!
 
A

Anonymous

Guest
hi

ich kann relativ gut php und wollte mir das mit dem DOM auch schonmal angucken muss aber sagen bin damit einfach nicht klargekommen. Was ich sagen will ist wenn du php kannst wird DOM schon machbar sein aber wenn du noch nicht mal php kannst solltest du das zuerst mal lernen.

mfg

Team Chrom
 
OP
Schnueffler

Schnueffler

Geoguru
PHP selber ist kein Thema. Da bin ich fit. Nur ich komme per DOm nicht an die Daten ran, die in einem Namespace liegen. Seit mehr als 4 Monaten mache ich jetzt an dem Thema rum, und bin immer noch nicht weiter gekommen.
 
A

Anonymous

Guest
hi

ok dann kann ich dir leider auch nicht weiterhelfen sorry wie gesagt hatte mit DOM auch so meine schiweirgkeiten.

Ein Tipp noch wenn es nur um gpx Cache Datein einlesen geht dann mach es doch folgendermaßen:

Wandel per GSAK die Datei in CSV Datein um und trenn sie einfach beim , mit split() auf so mach ich es mitlerweile geht genauso gut ist halt nurn Schritt mehr ;) vielleicht reicht das ja schon für deinen Zweck wenn nicht drück ich dir die Daumen das dir jemand anders helfen kann

mfg

Team Chrom
 
OP
Schnueffler

Schnueffler

Geoguru
Es geht sich zwar im GPX-Dateien, nur läuft GSAK nicht auf einem Webserver!!! Und da alles andere automatisch funktioniert (Postfach öffnen, Zip holen, entpacken, GPX lesen) sollte nun auch noch das Umkopieren per DOM klappen. Dann bin ich glücklich.
 
Schnueffler schrieb:
Es geht sich zwar im GPX-Dateien, nur läuft GSAK nicht auf einem Webserver!!! Und da alles andere automatisch funktioniert (Postfach öffnen, Zip holen, entpacken, GPX lesen) sollte nun auch noch das Umkopieren per DOM klappen. Dann bin ich glücklich.
Selber bin ich in die Tiefen von PHP und DOM abgetaucht. Aber meine Erfahrungen auf der anderen Seite war mehr als ernüchtern, was die PHPler zu Stande bekamen. Daher nimm Delphi und easyXML schreib dir ein kleines Tool, was du dann von PHP antickerst.

EDIT: jetzt kann man noch nicht einmal a_n_t_i_c_k_e_r_s_t hier im Forum schreiben. :cry:

KDB
 
OP
Schnueffler

Schnueffler

Geoguru
Von Delphi habe ich leider absolut keine Ahnung. Schade.

Hast Du es evt. schon mal versucht bzw. kannst mir bei einem solchen Programm helfen???
 
Schnueffler schrieb:
Von Delphi habe ich leider absolut keine Ahnung. Schade.

Hast Du es evt. schon mal versucht bzw. kannst mir bei einem solchen Programm helfen???
Schreib mal ein kleines WhatToDo zusammen. Dann können wir mal weitersehen.

Ach dann schau auch gleichmal auf SQlite an, eine sehr gute SQL Implementation, die auch auf PocketPC läuft.

KDB
 

hcy

Geoguru
Was nützt ihm Delphi auf dem Webserver, ist sicher eine Linux-Kiste. Also das mit dem XML sollte doch kein Problem sein unter PHP. Warum DOM, gibt's dort keine SAX-Parser? Versuch's mal damit.
 
hcy schrieb:
Was nützt ihm Delphi auf dem Webserver, ist sicher eine Linux-Kiste.
Es gibt Kylix. :wink:
hcy schrieb:
Also das mit dem XML sollte doch kein Problem sein unter PHP. Warum DOM, gibt's dort keine SAX-Parser? Versuch's mal damit.
Doch ein Zeitliches, wenn du eine 500 Cache GPX mit eine Parser abarbeitest, der selber nur interpretiert wird. Der Anschluss an eine MySQL sollte dagegen kein Problem sein.

KDB
 

Dr.Jeckyl

Geonewbie
Hi,

ich habe mich im Moment nicht mit PHP und DOM beschäftigt, aber immer wenn ich mal Infos brauchte, dann war http://www.php.net eine sehr gute Hilfe. Vor allem die Userkommentare unter den einzelnen API-Dokumenten waren meistens hilfreich.

Vielleicth findest Du ja hier etwas passendes.

Gruß Dr. Jeckyl
 
OP
Schnueffler

Schnueffler

Geoguru
Die Page kenne ich. DOM selber ist ja auch kein Problem, nur komme ich nicht an die Daten dran, die im Namespace stehen. Vielleicht hast Du ja eine Möglichkeit und schaffst es. Wäre Dir sehr dankbar, wenn Du ein paar Zeilen PHP-Code posten könntest
 
OP
Schnueffler

Schnueffler

Geoguru
Habe ich schon versucht. Leider habe ich es nicht geschaftt. Kannst auch mal ins PHP-Forum schauen. Da habe ich auch ein paar Zeilen Code drin stehen. Vielleicht findest du ja meinen Fehler darin: http://www.selfphp.de/forum/showthread.php?t=16825
 

hcy

Geoguru
Deine GPX-Datei sieht mir schon irgendwie fehlerhaft aus, so als würde der groundspeak-Namespace gar nicht richtig deklariert:

<gpx xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://www.topografix.com/GPX/1/0" version="1.0" creator="Groundspeak Pocket Query" xsi:schemaLocation="http://www.topografix.com/GPX/1/0 http://www.topografix.com/GPX/1/0/gpx.xsd http://www.groundspeak.com/cache/1/0 http://www.groundspeak.com/cache/1/0/cache.xsd">

Müsste da nicht was in der Art:
xmlns:groundspeak="http://www.groundspeak.com/cache/1/0" stehen?
 
OP
Schnueffler

Schnueffler

Geoguru
hcy schrieb:
Deine GPX-Datei sieht mir schon irgendwie fehlerhaft aus, so als würde der groundspeak-Namespace gar nicht richtig deklariert:

Müsste da nicht was in der Art:
xmlns:groundspeak="http://www.groundspeak.com/cache/1/0" stehen?

Keine Ahnung!!! Das ist ein Original PQ. Wenn da was falsch dran wäre, müsste man es im Prog abfangen, da ich nicht bereit bin, jedes PQ händisch zu ändern und das auch nicht von anderen verlangen kann. Von daher sollte das schon irgendwie klappen.
 

fizoblon

Geocacher
Hi Schnueffler,

mal abgesehen davon, dass mir Nik und Signatur überhaupt nicht gefallen,
aus Gründen die Hacker zu vertreten haben, werd ich gerne mit einsteigen bis zu dem Punkt an dem ich erkenne, dass die Indizien Programm sind.
Nimm das bitte kommentarlos. Vielleicht lohnt sich das Gespräch darüber nicht. Aber ich nehme es ernst.

Also: domxml ist für PHP 4. In PHP 5 wurde nichts neues an domxml entwickelt. Es gibt dort hierfür das PHP-Modul DOM. Steht hier: http://de2.php.net/manual/de/ref.dom.php

Ich schreib das nur, weil meine Entwicklungen, ein Konverter von Caches von http://www.geocaching.com (Groundspeak) nach der Deutschen Ensprechung, http://www.opencaching.de. Der Bedarf war damals da: ca. 500 Konvertierungen von 09/2004 bis 04/2005. Dann stieg ich mit dem Server auf PH5 um ohne an das Tool zu denken.. Heute bin ich aus dem Geo-Kram allerdings völlig raus und auch aus PHP4.

Leider läuft also das hier
http://www.geohunting.de/index.php?module=pagesetter&func=viewpub&tid=1&pid=106
absolut nicht mehr. Das Verfahren aber sollte transferierbar auf DOM sein.
Zum Teil hbe ich damals sogar begonnen, aber dann fand ich Koordinaten die mich vom Cachen wegbrachten ;-)

So bevor ich jetzt rätzel und sinnlose Romane schreibe: Auf welcher Plattform willst Du arbeiten und was hast Du vor.
Konvertierung: Quelle ->Zielfomt ? (usw.)

Grundsätzlich war es damals nicht schwer Groundspeak auszulesen über die DOMXML in Strings zu zerlegen und sachgrecht einen neuen Eintrag bei OC.de vorzunehmen. Hier nam ich also z.B. meine eigenen Caches.

Ich fand auf das DOM-Object in PHP5 nicht soooo viel schwerer.
Kurz: Was soll es werden?

Der einfachste Start wird wohl sowas sein:

Code:
<?php
$doc = new DOMDocument();
$doc->load('cache.xml');
var_dump($doc);
?>
Dann müssen wir wissen, wohin wir wollen.
nun Du.
cu
 
Oben