Moi,
kysymy on hieman pitkä, mutta on Apache serveri, jossa nettisivu. Tarkoitus olisi saada aikaan nettisivuille ohjelma, jolla pystyisi jotenkin editoimaan tuota XML-tiedostoa ja päädyin toteuttamaan sen (tai ainakin yritän toteutusta) PHP:llä. Strategia on tämä ja jos joku keksii paremman, niin otan mielenkiinnolla neuvoja vastaan. Itse kysymys tulee vasta lopussa
1. XML-tiedoston tiedot tulostetaan PHP:n avulla järkevämmin nettisivuille, eli ilman tageja. Käyttäjä voi lisätä/poistaa päätason tagin, tai alitason tagin ja lähettää muutokset lomakkeen kautta.
2. Lomake käynnistää PHP-scriptin joka parsii aluperäistä XML-tiedostoa ja tekee muutokset.
Ongelmia: xml_set_element_handler-methodilla pääsen PHP:ssä parsimaan XML-tiedostoa (sen alku- ja lopputageja + dataa), mutta ongelma on siinä, että alkuperäisessä XML-tiedostossa ei ole dataa tagien välissä, vaan tagien sisällä. Tähän tyyliin:
<testsuite> <testcase description="SUBS001014"> <testcasecomponent componenttype="HIT" componentname="SUBS001014.HIT"/> </testcase> </testsuite>
Tulostamalla xml_set_element_handler:in annetussa functiossa startTag($parser,$element_name,$element_attrs), olevat element_name saadaan vain : TESTSUITE TESTCASE TESTCASECOMPONENT TESTCASE TESTSUITE, muttei ollenkaan esim. tuota description="..." -kohtaa. element_attrs tulostus ei tuota mitään ulos. Jotain neuvoa asian toteutukseen kaipaisin ja sitten vielä siihen, että onko tämä ylipäätänsä järkevä tapa toteutaa asiaa, koska epäilen miten tagien sisällön muuttaminen onnistuu, jos haluan poistaa tai lisäillä uusia sellaisia tietojen kanssa...?
Kiitokset,
Ville
https://www.php.net/manual/en/ref.simplexml.php, tulee ainakin PHP5:n mukana oletuksena.
Aihe on jo aika vanha, joten et voi enää vastata siihen.