Mailinglisten-Archive |
Hallo Albin, Albin Blaschka wrote: > <li acl = "1"><a href = "script1.php">Ausgabe</a> > <ul acl = "1"> > <li acl = "1"><a href = "script2.php">Persönliche Liste</a></li> > <li acl = "2"><a href = "script3.php">Gesamtliste</a></li> > <li acl = "2"><a href = "script4.php">Statistik</a></li> > </ul> > </li> Verstehe ich das richtig, dass für User 2, dieser gesamte Ast "Ausgab" wegfällt, während User 1 fast alles zu sehen bekommt, außer "Gesamtliste" und "Statistik"? (Die bekommt aber auch User 2 nicht zu sehen, weil ja schon das Elternelement gesperrt ist.) > Ich mach's auch gern andersherum, streiche die Knoten, die nicht > hineinpassen...hatte aber auch in dieser Richtung keinen Lichtblitz... Wenn ich Dich richtig verstanden habe, und es nicht unbedingt mit DOM-Funktionen realisiert werden soll, könnte es so gehen: ========================== <?php require_once("xml-line-0.4.4.3.php"); $xml = new xml_line("liste.xml", "xml"); //alle Elemente rauswerfen, bei denen acl="2" ist: $xml->delete_element(0, "", "", array('acl' => 2)); echo "<pre>"; $xml->xml_stream('lat1', 'lat1'); echo htmlentities($xml->get_output()); echo "</pre>"; ?> Ausgabe: <?xml version="1.0" encoding="ISO-8859-1"?> <ul id="navigation" class="horizontal"> <li acl="1"><a href="edit.php">Daten pflegen</a> <ul acl="1"> <li acl="1"><a href="edit.php?flag=input">Werk eingeben</a></li> <li acl="1"><a href="edit.php?flag=edit">Werk editieren</a></li> </ul> </li> <li acl="1"><a href="script1.php">Ausgabe</a> <ul acl="1"> <li acl="1"><a href="script2.php">Persönliche Liste</a></li> </ul> </li> </ul> ======================== Bei Bedarf packe ich das Beispiel mal in eine Zip-Datei und stelle es zum Testen zur Verfügung. Viele Grüße Peter -- http://www.media-palette.de/tools/xml-line/
php::bar PHP Wiki - Listenarchive