Hoi allen,
ik heb een vraag over deze XML string.
Wanneer ik bij onze koerier een boeking inschiet krijg ik dit terug. Nu wil ik de tracking URL opslaan in. Dus ik deed:Code:<?xml version="1.0" encoding="UTF-8"?> <response> <status>OK</status> <code_shipment>11645021</code_shipment> <reference>120000017</reference> <awb>JVGL0568746264502101</awb> <carrier>EEX</carrier> <service_level>EUROPLUS</service_level> <pieces>2</pieces> <weight>20.00</weight> <weight_uom>kg</weight_uom> <volume_weight>0.33</volume_weight> <delivery_condition>CPT</delivery_condition> <price>6.1</price> <code_currency>EUR</code_currency> <date_delivery></date_delivery> <time_delivery></time_delivery> <accepted_by></accepted_by> <date_pickup>16-Jan-2012</date_pickup> <status_shipment>COMM</status_shipment> <tracking_url><form action="http://www.dhl-tracknet.nl/cgi-bin-al/UFA100/UK/" target="_new" method="get"><input name="type" type="hidden" value="U"/><input name="zoekveld" type="hidden" value="JVGL0568746264502101"/><input type="submit" value=" Track "/></form></tracking_url> <date_scan></date_scan><time_scan></time_scan><type1></type1><type2></type2><scan_location1></scan_location1><scan_location2></scan_location2><scan_text></scan_text><scanned_by></scanned_by><shipment_package><sequence>1</sequence><awb>JVGL0568746264502101</awb><date_delivery></date_delivery><time_delivery></time_delivery><accepted_by></accepted_by><reference></reference></shipment_package><shipment_package><sequence>2</sequence><awb>JVGL0568746264502102</awb><date_delivery></date_delivery><time_delivery></time_delivery><accepted_by></accepted_by><reference></reference></shipment_package></response>
En dan:PHP Code:
$oXml = simplexml_load_string('de xml string');
Maar dat werkt niet. Hoe kan ik dit wel doen? Ik wil het uiteindelijk opslaan in de database in een TEXT column.PHP Code:
(string)$oXml->tracking_url;
Bedankt voor jullie hulp!
Aanvullend bericht:
Uiteindelijk moet dit dus in de database komen te staan:
<form action="http://www.dhl-tracknet.nl/cgi-bin-al/UFA100/UK/" target="_new" method="get"><input name="type" type="hidden" value="U"/><input name="zoekveld" type="hidden" value="JVGL0568746264502101"/><input type="submit" value=" Track "/></form>
- Vraag over XML string (PHP)
-
13-01-2012, 10:03 #1
- Berichten
- 400
- Lid sinds
- 15 Jaar
Vraag over XML string (PHP)
Laatst aangepast door diederikva : 13-01-2012 om 10:09 Reden: Automatisch samengevoegd.
-
In de schijnwerper
Backlinks.nl - DA70+ TF60+ 1800+ WebsitesLinkpartners[SNELLE LEVERING] Laat je website / webshop snel en professioneel bouwen!Freelance / WerkTe Koop: Online Vastgoedplatform en BedrijfWebsite te koopLinkvada.com Linkbuilding Platform: Direct Linkbuilden op 77.000+ premium domeinenLinkpartners -
14-01-2012, 12:26 #2
- Berichten
- 158
- Lid sinds
- 13 Jaar
Re: Vraag over XML string (PHP)
Beste,
Kijk is aan:
PHP Code:<?php
$string = '<?xml version="1.0" encoding="UTF-8"?>
<response>
<status>OK</status>
<code_shipment>11645021</code_shipment>
<reference>120000017</reference>
<awb>JVGL0568746264502101</awb>
<carrier>EEX</carrier>
<service_level>EUROPLUS</service_level>
<pieces>2</pieces>
<weight>20.00</weight>
<weight_uom>kg</weight_uom>
<volume_weight>0.33</volume_weight>
<delivery_condition>CPT</delivery_condition>
<price>6.1</price>
<code_currency>EUR</code_currency>
<date_delivery></date_delivery>
<time_delivery></time_delivery>
<accepted_by></accepted_by>
<date_pickup>16-Jan-2012</date_pickup>
<tracking_url><form action="http://www.dhl-tracknet.nl/cgi-bin-al/UFA100/UK/" target="_new" method="get"><input name="type" type="hidden" value="U"/><input name="zoekveld" type="hidden" value="JVGL0568746264502101"/><input type="submit" value=" Track "/></form></tracking_url>
<status_shipment>COMM</status_shipment>
<date_scan></date_scan><time_scan></time_scan><type1></type1><type2></type2><scan_location1></scan_location1><scan_location2></scan_location2><scan_text></scan_text><scanned_by></scanned_by><shipment_package><sequence>1</sequence><awb>JVGL0568746264502101</awb><date_delivery></date_delivery><time_delivery></time_delivery><accepted_by></accepted_by><reference></reference></shipment_package><shipment_package><sequence>2</sequence><awb>JVGL0568746264502102</awb><date_delivery></date_delivery><time_delivery></time_delivery><accepted_by></accepted_by><reference></reference></shipment_package></response>';
$xml = simplexml_load_string($string);
$boeking = '<form action="http://www.dhl-tracknet.nl/cgi-bin-al/UFA100/UK/" target="_new" method="get"><input name="type" type="hidden" value="U"/><input name="zoekveld" type="hidden" value="'.$xml->awb.'"/><input type="submit" value=" Track "/></form>';
mysql_query("
INSERT INTO boekingen
SET tekst = '".mysql_real_escape_string($boeking)."'
");
?>
Groeten,
Sefa
Aanvullend bericht:
De oplossing was trouwens gewoon de hele form in een variabele zetten, en alleen de speciale code die inde value moet uit de xml halen, als je gewoon de hele form uit de xml haalt, krijg je een array vandaar dat je niks ziet als je xml->tracking_url; probeert te echo'en!Laatst aangepast door Sefa S. : 14-01-2012 om 12:28 Reden: Automatisch samengevoegd.
-
14-01-2012, 20:07 #3
- Berichten
- 750
- Lid sinds
- 15 Jaar
Re: Vraag over XML string (PHP)
Maar je houd er geen rekening mee dat die form url veranderen
Moment ik zal eens even een stuk code lokaal maken
Laatst aangepast door Raymond Nijland : 14-01-2012 om 21:01
-
14-01-2012, 20:17 #4
- Berichten
- 1.470
- Lid sinds
- 19 Jaar
Re: Vraag over XML string (PHP)
Ik gebruik deze class om xml om te gooien naar een array werkt perfect en maakt de data ook meteen beter bruikbaar..
http://pastecode.org/index.php/view/90373603
-
14-01-2012, 20:41 #5
- Berichten
- 750
- Lid sinds
- 15 Jaar
Re: Vraag over XML string (PHP)
Die class gaat ook niet werken aangezien de xml structuur gewoon zwaar slecht is vooral dat tracking_url element dus je moet haast wel met een regex gaan werken om te op te lossen zie onderstaande code
PHP Code:<?php
error_reporting(E_ALL);
$string = '<?xml version="1.0" encoding="UTF-8"?>
<response>
<status>OK</status>
<code_shipment>11645021</code_shipment>
<reference>120000017</reference>
<awb>JVGL0568746264502101</awb>
<carrier>EEX</carrier>
<service_level>EUROPLUS</service_level>
<pieces>2</pieces>
<weight>20.00</weight>
<weight_uom>kg</weight_uom>
<volume_weight>0.33</volume_weight>
<delivery_condition>CPT</delivery_condition>
<price>6.1</price>
<code_currency>EUR</code_currency>
<date_delivery></date_delivery>
<time_delivery></time_delivery>
<accepted_by></accepted_by>
<date_pickup>16-Jan-2012</date_pickup>
<tracking_url><form action="http://www.dhl-tracknet.nl/cgi-bin-al/UFA100/UK/" target="_new" method="get"><input name="type" type="hidden" value="U"/><input name="zoekveld" type="hidden" value="JVGL0568746264502101"/><input type="submit" value=" Track "/></form></tracking_url>
<status_shipment>COMM</status_shipment>
<date_scan></date_scan><time_scan></time_scan><type1></type1><type2></type2><scan_location1></scan_location1><scan_location2></scan_location2><scan_text></scan_text><scanned_by></scanned_by><shipment_package><sequence>1</sequence><awb>JVGL0568746264502101</awb><date_delivery></date_delivery><time_delivery></time_delivery><accepted_by></accepted_by><reference></reference></shipment_package><shipment_package><sequence>2</sequence><awb>JVGL0568746264502102</awb><date_delivery></date_delivery><time_delivery></time_delivery><accepted_by></accepted_by><reference></reference></shipment_package></response>';
$pattern = '~<tracking_url>(.*)</tracking_url>~';
$subject = $string;
$match = false;
preg_match($pattern, $subject, $match);
if ($match != false) {
$tracking_url = $match[1];
echo $tracking_url;
}
?>Laatst aangepast door Raymond Nijland : 14-01-2012 om 20:57
Plaats een
- + Advertentie
- + Onderwerp
Marktplaats
Webmasterforum
- Websites algemeen
- Sitechecks
- Marketing
- Domeinen algemeen
- Waardebepaling
- CMS
- Wordpress
- Joomla
- Magento
- Google algemeen
- SEO
- Analytics
- Adsense
- Adwords
- HTML / XHTML
- CSS
- Programmeren
- PHP
- Javascript
- JQuery
- MySQL
- Ondernemen algemeen
- Belastingen
- Juridisch
- Grafisch ontwerp
- Hosting Algemeen
- Hardware Info
- Offtopic