lezen in gpx file top op een bepaalde plaats

Overzicht Reageren

Sponsored by: Vacatures door Monsterboard

Pagina: « vorige 1 2 3 4 volgende »

John D

John D

18/02/2023 16:32:41
Quote Anchor link
Om nog even te resumeren:
1. Je hebt een XML file (genaamd .gpx maar dat is niet relevant). XML is een standaard voor gegevens opslag en verwerking.
2. Hiervoor zijn dus veel hulpmiddelen beschikbaar en hoef je niet met fread en pattern-matching aan de slag.
3. Je kunt dus met kant-en-klare programma-modules cq libraries werken om de XML file snel de gewenste attributen uit te lezen.
4. Vervolgens insert je per regel in je database.
Even wat tijd steken in de werking van aangeboden kant-en-klare programma-modules en je bespaart jezelf veel tijd en het risico om foutgevoelige php stukken te bouwen.

Als het programma geen webfunctie heeft dan doe ik dit soort dingen altijd met python in plaats van php.
Voor Python zijn ook veel duidelijke en makkelijke libraries beschikbaar.
Gewijzigd op 18/02/2023 16:34:33 door John D
 
PHP hulp

PHP hulp

20/05/2024 17:10:56
 
Berta Pappens

Berta Pappens

18/02/2023 16:39:04
Quote Anchor link
Denk dat het een beetje te groot zal zijn, of geeft dat niet ?
En hoe weet je dat dit voor u is ?
 
- Ariën  -
Beheerder

- Ariën -

18/02/2023 16:44:31
Quote Anchor link
PHP kan prima met grote XML-feeds werken.
 
Berta Pappens

Berta Pappens

18/02/2023 16:46:11
Quote Anchor link
neen dat bedoel ik niet , ik bedoel om het te delen via deze site , het is copy past, maar het is groot.


Toevoeging op 18/02/2023 16:46:35:

kan ik dat opsturen via mail ?
 
- Ariën  -
Beheerder

- Ariën -

18/02/2023 16:50:27
Quote Anchor link
Gooi op Pastebin. Of kort het in?
Als er bij wijze van spreke 200 items in staan, kan je dit net zo goed inkorten tot 2 items.
 
Berta Pappens

Berta Pappens

18/02/2023 16:56:54
Quote Anchor link
Het staat er op als GPX
 
- Ariën  -
Beheerder

- Ariën -

18/02/2023 17:00:36
Quote Anchor link
Ja....
 
Berta Pappens

Berta Pappens

18/02/2023 17:29:10
Quote Anchor link
wat wil ik in mijn database :
het begint bij <wpt en de cache eindigt bij </wpt>
<wpt lat="50.558333" lon="4.101667"> enkel 50.558333 en 4.101667

<name>GCA02MB</name> enkel GCA02MB
<desc>26. Il y a de l'illusion dans l'air by Jc et Fr (2/2)</desc> enkel 26. Il y a de l'illusion dans l'air by Jc et Fr (2/2)
<type>Geocache|Unknown Cache</type>enkel type (unknown cache
<groundspeak:container>Micro</groundspeak:container> enkel micro
<groundspeak:difficulty>2</groundspeak:difficulty> enkel 2
<groundspeak:terrain>2</groundspeak:terrain>enkel 2
<groundspeak:country>Belgium</groundspeak:country> enkel Belgium
<groundspeak:state>Hainaut</groundspeak:state>enkel Hainaut
 
- Ariën  -
Beheerder

- Ariën -

18/02/2023 17:30:10
Quote Anchor link
Zet even op PasteBin a.u.b.
Bij voorkeur beknopt met een paar items.
Gewijzigd op 18/02/2023 17:34:40 door - Ariën -
 
Berta Pappens

Berta Pappens

18/02/2023 23:20:47
Quote Anchor link
Ik ben begonnen waarin je zij dat het gemakkelijk ging zijn, maar ik stoot al op de eerste fouten.

Parseerfout: syntaxisfout, onverwacht token ":", verwacht "," of ";" in C:\xampp\htdocs\geo_db_gpx_gsak\test.php op regel 10

dit staat in de GPX :
<groundspeak:type>Unknown Cache</groundspeak:type>
<groundspeak:container>Micro</groundspeak:container>
<groundspeak:difficulty>2</groundspeak:difficulty>
<groundspeak:terrain>2</groundspeak:terrain>
<groundspeak:country>Belgium</groundspeak:country>
<groundspeak:state>Hainaut</groundspeak:state>


Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
<?php
header ('Content-type: text/html; charset=utf8mb4');
$xml=simplexml_load_file("c:/geo_db/test.gpx") or die("Error: Cannot create object");

echo $xml->wpt[0]->lat . "<br>";
echo $xml->wpt[0]->lon . "<br>";
echo $xml->wpt[0]->name . "<br>";
echo $xml->wpt[0]->desc . "<br>";
echo $xml->wpt[0]->type . "<br>";
echo $xml->wpt[0]->groundspeak:container . "<br>";
echo $xml->wpt[0]->groundspeak:difficulty . "<br>";
echo $xml->wpt[0]->groundspeak:terrain . "<br>";
echo $xml->wpt[0]->groundspeak:country . "<br>";
echo $xml->wpt[0]->groundspeak:state . "<br>";
?>
 
Ozzie PHP

Ozzie PHP

18/02/2023 23:36:39
Quote Anchor link
Ik weet niet hoe die tool werkt, maar heb je dit al eens getest om te zien wat eruit komt.

Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
<?php

var_dump($xml->wpt[0]);

?>
 
Berta Pappens

Berta Pappens

18/02/2023 23:42:27
Quote Anchor link
blijf dezelfde fout krijgen

Parseerfout: syntaxisfout, onverwacht token ":", verwacht "," of ";" in C:\xampp\htdocs\geo_db_gpx_gsak\test.php op regel 10
 
Ozzie PHP

Ozzie PHP

18/02/2023 23:43:21
Quote Anchor link
Je moet die regels ook even weghalen. Alleen dit:

Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
<?php

header ('Content-type: text/html; charset=utf8mb4');
$xml=simplexml_load_file("c:/geo_db/test.gpx") or die("Error: Cannot create object");

var_dump($xml->wpt[0]);

?>
 
Berta Pappens

Berta Pappens

18/02/2023 23:46:47
Quote Anchor link
blijf de foutmelding krijgen ...

Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
<?php
header ('Content-type: text/html; charset=utf8mb4');
$xml=simplexml_load_file("c:/geo_db/test.gpx") or die("Error: Cannot create object");
var_dump($xml->wpt[0]);
echo $xml->wpt[0]['lat'] . "<br>";
echo $xml->wpt[0]['lon'] . "<br>";
echo $xml->wpt[0]->name . "<br>";
echo $xml->wpt[0]->desc . "<br>";
echo $xml->wpt[0]->type . "<br>";
echo $xml->wpt[0]->groundspeak:container . "<br>";
echo $xml->wpt[0]->groundspeak:difficulty . "<br>";
echo $xml->wpt[0]->groundspeak:terrain . "<br>";
echo $xml->wpt[0]->groundspeak:country . "<br>";
echo $xml->wpt[0]->groundspeak:state . "<br>";
?>



Toevoeging op 18/02/2023 23:48:27:

foutmelding is op echo $xml->wpt[0]->groundspeak:container . "<br>";

omdat er een : tussen groundspeak en container staat.
 
Ozzie PHP

Ozzie PHP

18/02/2023 23:51:42
Quote Anchor link
Zucht ... ben ik echt zo onduidelijk?

Ik gaf toch echt aan dat je alleen die 3 regels moet plaatsen. De rest moet je even weghalen.

Alleen dit en verder niks.

Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
<?php

header ('Content-type: text/html; charset=utf8mb4');
$xml=simplexml_load_file("c:/geo_db/test.gpx") or die("Error: Cannot create object");

var_dump($xml->wpt[0]);

?>
 
Berta Pappens

Berta Pappens

18/02/2023 23:57:50
Quote Anchor link
sorry, zo had ik het niet begrepen:
dan krijg ik dit :

object ( SimpleXMLElement )[ 4 ]
public '@attributes' =>
array (size=2)
'lat' => string '50.558333' (length=9)
' lon' => string '4.101667' (lengte=8)
public 'time' => string '2022-12-24T08:00:00Z' (length=20)
public 'name' => string 'GCA02MB' (length=7 )
public 'desc' => tekenreeks '26. Er hangt illusie in de lucht door Jc et Fr (2/2)' (lengte=53)
public 'url' => string 'http://coord.info/GCA02MB' (lengte=25)
public 'urlname' => tekenreeks '26. Er hangt illusie in de lucht door Jc et Fr' (lengte=47)
public 'sym' => string 'Geocache' (lengte=8)
public 'type' => string 'Geocache|Unknown Cache' ( lengte=22)
 
Ozzie PHP

Ozzie PHP

19/02/2023 00:06:07
Quote Anchor link
Als ik Google heeft die : iets te maken met een namespace. Probeer onderstaande regel eens eraan toe te voegen:

Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
<?php

var_dump($xml->wpt[0]->children('groundspeak', true)->container);

?>

Grote kans dat het fout gaat hoor, maar je kunt het eens proberen.
 
Berta Pappens

Berta Pappens

19/02/2023 00:11:02
Quote Anchor link
grote fout :

Warning: simplexml_load_file(): c:/geo_db/test.gpx:21: namespace error : Failed to parse QName 'xmlns:groundspeak:' in C:\xampp\htdocs\geo_db_gpx_gsak\test.php on line 3

Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
<?php
header ('Content-type: text/html; charset=utf8mb4');
$xml=simplexml_load_file("c:/geo_db/test.gpx") or die("Error: Cannot create object");
var_dump($xml->wpt[0]);
var_dump($xml->wpt[0]->children('groundspeak', true)->container);

[
/code]
 
Ozzie PHP

Ozzie PHP

19/02/2023 00:17:34
Quote Anchor link
>> grote fout :

Gewoon een foutmelding. Niet gelijk zo paniekerig reageren.

Ik weet ook niet hoe dit werkt. Ik probeer je gewoon te helpen.

Plak hier eens de eerste 25 regels van dat gpx bestand.
 
- Ariën  -
Beheerder

- Ariën -

19/02/2023 08:57:47
Quote Anchor link
Ikzelf gebruik geloof zo een constructie:

$string= file_get_content("bla.xml") waarna ik $xml=simplexml_load_string($string) gebruik.

Als je nu een beknopte sample op Pastebin plaatst met een paar geocache items. Met een half deel kunnen we niet veel als we niet weten welke tags (nodes) er gebruikt worden.
Gewijzigd op 19/02/2023 08:59:55 door - Ariën -
 

Pagina: « vorige 1 2 3 4 volgende »



Overzicht Reageren

 
 

Om de gebruiksvriendelijkheid van onze website en diensten te optimaliseren maken wij gebruik van cookies. Deze cookies gebruiken wij voor functionaliteiten, analytische gegevens en marketing doeleinden. U vindt meer informatie in onze privacy statement.