Hallo!
Ich habe bei mir eine Bildergallerie laufen, deren Pics per XML-Datei geladen werden. Die XML Datei ist wie folgt aufgebaut:
<?xml version="1.0" encoding="UTF-8"?>
<menu>
<gallery name="Familien">
<image source="bilder/familien/1.jpg" thumb="bilder/familien/1t.jpg" title="Bild 1"/>
<image source="bilder/familien/2.jpg" thumb="bilder/familien/2t.jpg" title="Bild 2"/>
<image source="bilder/familien/3.jpg" thumb="bilder/familien/3t.jpg" title="Bild 3"/>
</gallery>
<gallery name="Kinder">
<image source="bilder/kinder/1.jpg" thumb="bilder/kinder/1t.jpg" title="Bild 1"/>
<image source="bilder/kinder/2.jpg" thumb="bilder/kinder/2t.jpg" title="Bild 2"/>
<image source="bilder/kinder/3.jpg" thumb="bilder/kinder/3t.jpg" title="Bild 3"/>
</gallery>
usw...
</menu>
Die Galerie läuft ohne Probleme. Jetzt bin ich dabei ein kleines Tool zu basteln, welches erlaubt die XML-Datei online per Browser zu bearbeiten. Dazu verwende ich SimpleXml:
Jetzt zu meinem Problem... Wenn ich nun das Script im Browser aufrufe werden mir lediglich die ersten drei Zeilen aus der Gallery "Familien" zum Bearbeiten angezeigt. Wie bekomme ich es nun hin, dass das Script dynamisch die weiteren Gallerien in der Datei ausgibt?
Bin seit heute früh im Netz unterwegs und konnte bisher leider keine Antwort finden. Vielleicht kann mir jemand hier einen Lösungsansatz nennen?
Gruß, Frank
Ich habe bei mir eine Bildergallerie laufen, deren Pics per XML-Datei geladen werden. Die XML Datei ist wie folgt aufgebaut:
<?xml version="1.0" encoding="UTF-8"?>
<menu>
<gallery name="Familien">
<image source="bilder/familien/1.jpg" thumb="bilder/familien/1t.jpg" title="Bild 1"/>
<image source="bilder/familien/2.jpg" thumb="bilder/familien/2t.jpg" title="Bild 2"/>
<image source="bilder/familien/3.jpg" thumb="bilder/familien/3t.jpg" title="Bild 3"/>
</gallery>
<gallery name="Kinder">
<image source="bilder/kinder/1.jpg" thumb="bilder/kinder/1t.jpg" title="Bild 1"/>
<image source="bilder/kinder/2.jpg" thumb="bilder/kinder/2t.jpg" title="Bild 2"/>
<image source="bilder/kinder/3.jpg" thumb="bilder/kinder/3t.jpg" title="Bild 3"/>
</gallery>
usw...
</menu>
Die Galerie läuft ohne Probleme. Jetzt bin ich dabei ein kleines Tool zu basteln, welches erlaubt die XML-Datei online per Browser zu bearbeiten. Dazu verwende ich SimpleXml:
PHP-Code:
<?php
$file = "gallery.xml";
$savefile = "gallery.xml";
$xml = simplexml_load_file($file);
?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
<title>XML-Editor</title>
</head>
<body>
<?php
if (empty($_POST)) {
?>
<form action="<? echo $_SERVER['PHP_SELF']?>" method="post">
<?php
foreach ($xml->gallery->image as $node) {
$i++;
$name = $node["source"];
$thumb = $node["thumb"];
$title = $node["title"];
//
echo "<input name=\"name_$i\" type=\"text\" value=\"$name\" /> \n";
echo "<input name=\"thumb_$i\" type=\"text\" value=\"$tumb\" /> \n";
echo "<input name=\"title_$i\" type=\"text\" value=\"$title\" /><br />\n<br />\n";
}
?>
<input type="submit" name="Submit" value="Speichern" />
</form>
</body>
</html>
<?php
} else {
foreach ($_POST as $key => $value) {
if($key != "Submit") {
$para = explode("_", $key);
$nr = $para[1];
$name = $para[0];
$xml->gallery[$nr-1]->image[$name] = $value;
$xml->asXML($savefile);
}
}
echo "Datei unter <strong> $savefile </strong> gespeichert!\n";
echo "</body>\n";
echo "</html>";
}
?>
Bin seit heute früh im Netz unterwegs und konnte bisher leider keine Antwort finden. Vielleicht kann mir jemand hier einen Lösungsansatz nennen?
Gruß, Frank
Kommentar