06. september 2008 - 15:08
Der er
6 kommentarer og 1 løsning
fra php til xml igen
Denne kode tilføjer sidst i xml dokumentet, hvordan ændres det så det istedet indsættes inndefor <gallery> </gallery> <body> <?php if (isset($_POST['description'])) { $filnavn = 'fil.xml'; $out = "\n<image color=\"0x8E94AF\">\n"; foreach ($_POST as $name=>$val) { $out .= "<$name>".ucfirst(strtolower($val))."</$name>\n"; } $out .= "</image>\n"; if (!file_exists($filnavn)) touch($filnavn); $fp = fopen($filnavn, 'a'); fwrite($fp, $out); fclose($fp); echo "billedet er tilføjet!"; } else { ?> <form action="" method="post"> <p><input name="description" type="text" /><br /> <input name="pic" type="text" /><br /> <input name="link" type="text" /></p> <p><input type="submit" value="Lav xml" /></p> </form> <?php }?> </body> fil.xml: <gallery> <image color="0x8E94AF"> <description>12</description> <pic>123</pic> <link>1234</link> </image> </gallery>
Annonceindlæg tema
06. september 2008 - 15:50
#1
Hvis jeg forstår dig ret, så er det nemmeste, at du først henter indholdet af filen ind i en variabel. Så fjerner du sidste linie (</gallery>) og så tilføjer du det nye, hvorefter du igen tilføjer </gallery>.
07. september 2008 - 11:31
#2
Kan squ ik få det til at virke :(, men arbejder videre med dit forslag! Skylder også lidt point så smid et svar!
07. september 2008 - 11:36
#3
Prøv at vise, hvad du har indtil videre, så kan det jo være jeg kan give et lille hint...
07. september 2008 - 15:01
#4
Forsøger med følgende, koden tilføjer nu rigtigt i mit xml dokument, men mangler at få den til at gemme resultatet! <?php include 'xml.xml'; $sxe = new SimpleXMLElement($xmlstr); $gallery = $sxe; $image = $gallery->addChild('image'); $image->addChild('description', 'test1'); $image->addChild('pic', 'test2'); $image->addChild('link', 'test3'); echo $sxe->asXML(); ?>
07. september 2008 - 16:20
#5
Ja ok, men det viser jo sådan set ikke, hvad der sker med de data...
22. september 2008 - 09:10
#6
det tog noget tid men fandt løsningen :) mangler bare linjeskift i resultatet <?php $xmlstr = file_get_contents("xml.xml"); $xml = new SimplexmlElement($xmlstr); $newImage = $xml->addchild('image'); $newImage->addchild('description', 'tester'); $newImage->addchild('pic', 'tester1'); $newImage->addchild('link', 'tester2'); $handle = fopen("xml.xml", "w"); fwrite($handle, $xml->asxml()); fclose($handle); ?>
11. marts 2009 - 17:03
#7
luk
Vi tilbyder markedets bedste kurser inden for webudvikling