Avatar billede Mik2000 Professor
15. april 2008 - 21:38 Der er 16 kommentarer og
1 løsning

Læs XML via PHP - tutorials, hvorhenne?

Hej

Jeg skal kunne læse en XML side via PHP 4.3 og uden der installeres nogle add ons på serveren.
Er dette muligt, og hvis det er, er der så nogle der kender nogle tutorials eller lign. så jeg kan lærer hvordan man gør?

Har kigget og fundet mange der ikke kan bruges eller nogle hvor man bare får et kodeeksempel som ikke kan laves om fordi man ikke lære det
Avatar billede arne_v Ekspert
15. april 2008 - 22:03 #1
http://www.php.net/manual/en/book.domxml.php

virker i PHP 4.3 og der er eksempler i dokumentationen inkl. kommentarerne.
Avatar billede Mik2000 Professor
15. april 2008 - 22:35 #2
Men der ser da ud som om der skal installeres noget inden det virker
Avatar billede arne_v Ekspert
15. april 2008 - 22:54 #3
Hvis det er din egen server skal du bare loade modulet.

Hvis det er et web hotel, saa er det forhaabentligt allerede installeret.
Avatar billede Mik2000 Professor
16. april 2008 - 00:37 #4
Problemet er at det er på en server som står hvor der ikke kan installeres andet på. Dvs. den er lukket til kun at have PHP 4.3, Mysql, PHPmyadmin, GDLib og ikke andet
Avatar billede arne_v Ekspert
16. april 2008 - 00:46 #5
Hvilke extensions er der loadet i PHP ?
Avatar billede Mik2000 Professor
16. april 2008 - 20:35 #6
Tror kun der er en standard installation af PHP 4.3.10, mysql, PHPMyAdmin og GDlib - og ellers ikke andre ting installeret
Avatar billede arne_v Ekspert
16. april 2008 - 20:45 #7
Kan du poste output fra den her:

<?php
phpinfo();
?>
Avatar billede Mik2000 Professor
17. april 2008 - 19:48 #8
Den er lang. Er der noget specifikt jeg kan kigge efter?
Avatar billede arne_v Ekspert
17. april 2008 - 19:54 #9
om der er et XML modul !
Avatar billede arne_v Ekspert
17. april 2008 - 19:55 #10
Min 4.4.7 siger f.eks.:



xml
XML Support  active 
XML Namespace Support  active 
EXPAT Version  1.95.6
Avatar billede Mik2000 Professor
17. april 2008 - 20:48 #11
Jeg har:
domxml
DOM/XML  enabled 
DOM/XML API Version  20020815 
libxml Version  20617 
HTML Support  enabled 
XPath Support  enabled 
XPointer Support  enabled 

og

xml
XML Support  active 
XML Namespace Support  active 
EXPAT Version  1.95.6 

Kan noget af det bruges?
Avatar billede arne_v Ekspert
17. april 2008 - 20:59 #12
Yes !

Prøv og brug de funktioner jeg linkede til i starten. De bør være tilgængelige.
Avatar billede Mik2000 Professor
17. april 2008 - 21:49 #13
Okay super. Det prøver jeg :)
Avatar billede Mik2000 Professor
17. april 2008 - 22:45 #14
Hmm er ikke helt med på hvor jeg skal starte og slutte, for der er ikke rigtig noget tutorial.

Har prøvet at hente en masse fra nettet, men de virker (bruger nok det hvor man skal have php5).

Har du en eksempel fil der ganske simpelt bare læser noget i en XML fil?
Avatar billede arne_v Ekspert
17. april 2008 - 22:52 #15
Jeg lavede nedenstående til et andet spørgsmål hvor spørger også sad med PHP 4 (som
er meget gammel !):

<?php
$doc = domxml_open_file('http://xml-eu.amazon.com/onca/xml3?KeywordSearch=genes&dev-t=D2WMCOIPS9D14E&f=xml&locale=uk&mode=books&page=1&t=chipdir03&type=lite');
$list = $doc->get_elements_by_tagname('Details');
foreach($list as $detail) {
    echo 'DetailsUrl = ' . $detail->get_attribute('url') . '<br>';
    $node = $detail->first_child();
    do {
        if($node->node_name() == 'Authors') {
            foreach($detail->get_elements_by_tagname('Author') as $author) {
                $authortext = $author->first_child();
                echo 'Author = ' . $authortext->node_value() . '<br>';
            }
        } else if($node->node_name() == "ProductName") {
            $productname = $node->first_child();
            if($productname != NULL) {
                echo 'ProductName = ' . $productname->node_value() . '<br>';
            }
        } else if($node->node_name() == "UsedPrice") {
            $usedprice = $node->first_child();
            if($usedprice != NULL) {
                echo 'UsedPrice = ' . $usedprice->node_value() . '<br>';
            }
        } else if($node->node_name() == "ImageUrlSmall") {
            $imageurlsmall = $node->first_child();
            if($imageurlsmall != NULL) {
                echo 'ImageUrlSmall = ' . $imageurlsmall->node_value() . '<br>';
            }
        }
        $node = $node->next_sibling();
    } while($node != NULL);
    echo '====<br>';
}
?>
Avatar billede Mik2000 Professor
21. april 2008 - 14:38 #16
Super det tester jeg lige når jeg er tilbage (er ikke hjemme pt :), men vender tilbage)
Avatar billede arne_v Ekspert
09. juni 2008 - 04:43 #17
Kommet hjem ?

Jeg smider et svar i tilfælde af at det virker.
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Vi tilbyder markedets bedste kurser inden for webudvikling

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester