XML mit PHP bearbeiten

creative18

Grünschnabel
Hallo,
ich habe hier ein schönes Tutorial gefunden, wie man xml Dateien auslesen und bearbeiten kann. Klappt schon einigermaßen, doch wie kann ich mit diesem Script die Ausgabe steuern?

PHP:
<html> 
    <head> 
        <title></title> 
    </head> 
    <body> 


<?php

$edit = "description"; 
$text = $_POST["id_text"];
$edit_content = "$text";
$id_bearbeiten = $_POST["id_bearbeiten"];
echo $id_bearbeiten;
$doc = DOMDocument::load("inhalt.xml"); 

switch($edit) { 
    case "description": 
        $newtag = $doc->createElement("description"); 
        $newtag_content = $doc->createTextNode($edit_content); 
        $newtag->appendChild($newtag_content); 
        break; 
    default: 
        break; 
} 

$xp = new domxpath($doc); 
$titles = $xp->query('//item[@link_id="'.$id_bearbeiten.'"]'); 
foreach ($titles as $node) { 
    foreach($node->childNodes as $cnode) { 
        if($cnode->nodeType == 1) { 
            if($cnode->nodeName == $edit) { 
                $cnode->parentNode->replaceChild($newtag, $cnode); 
            } 
        } 
    } 
} 
echo $doc->saveXML(); 
$doc->save('inhalt.xml');
 
echo'
<form enctype="multipart/form-data" action="'.$_SERVER['PHP_SELF'].'" method="POST">
	<select name="id_bearbeiten">';
    $filename = 'inhalt.xml'; 
     
    if(file_exists($filename)) { 
        $xml = simplexml_load_file($filename); 
        if($xml) { 
            foreach($xml->channel->item as $item) { 
            echo'
				<option value="'.$item->link.'">'.$item->link.'</option>'; 
												} 
				}
								}
echo'
</select><br>
	<textarea name="id_text" cols="40" rows="20"></textarea><br>
	<input type="submit" name="schritte" value="Neu_anlegen">

</form>
    </body> 
</html>'; 

?>

Hier lautet die Ausgabe am Anfang vom Script:

http://testtest.de/ Projekt de 1144915426 Dieser Text wurde editiert oeffentlich 13. April 2006 1144914537 hallo wie gehts privat 13. April 2006

Die xml Datei sieht so aus:

Code:
  <?xml version="1.0" ?> 
- <rss version="2.0">
- <channel>
  <title>Projekt News</title> 
  <link>http://testtest.de/</link> 
  <description>Projekt</description> 
  <language>de</language> 
- <item link_id="1144915426">
  <title>Jetzt</title> 
  <link>1144915426</link> 
  <description>Dieser Text wurde editiert</description> 
  <category>oeffentlich</category> 
  <pubDate>13. April 2006</pubDate> 
  </item>
- <item link_id="1144914537">
  <title>Test2005</title> 
  <link>1144914537</link> 
  <description>hallo wie gehts</description> 
  <category>privat</category> 
  <pubDate>13. April 2006</pubDate> 
  </item>
  </channel>
  </rss>


Wie kann ich es...
1. unterbinden, das direkt wenn ich den ersten Aufruf der Seite mache, dass diese Ausgabe erscheint?
2. Wie kann ich diese Ausgabe steuern?

Bin über jede Hilfe sehr dankbar.
 

Neue Beiträge

Zurück