Mailinglisten-Archive |
> Irgendwie verschachtelt sich das ganze. Kann mir jemand sagen, wie > ich das lösen kann? Das Hauptproblem ist wohl die Tatsache, dass > die Tabelle beliebig lang und die Bäume beliebig tief werden > können. Nimm eine Datenbankstruktur, die in etwa so aussieht: CREATE TABLE bereich( b_id INT NOT NULL DEFAULT '0' auto_increment, oberbereich INT, bereichsname CHAR(255), . . . PRIMARY KEY(b_id) ); oberbereich ist eine ID eines Bereiches. Damit bekommst du eine verknüpfte Struktur, beginnend ab der Wurzel. Nun mußt du nur noch dafür sorgen, daß du dir ein Array zusammenbaust, das beginnend von dem aktuellen Bereich (meinetwegen du stehst bei Bereichs- Nr. 7, willst aber den Weg zurück wissen) zurück bis zur Wurzel steigst. Das Array bzw. die aktuelle ID übergibst du dann als Parameter deinem Skript beim erneuten Aufruf und wanderst somit den Baum nach unten durch. Damit kannst du dann beliebig viele Tiefen managen. -- Björn Schotte | Tel : 09353/798-862 Main-Spessart Krankenhäuser und Senioreneinrichtungen | Fax : 09353/798-100 EDV Abteilung | D1 : 0171/5016530
php::bar PHP Wiki - Listenarchive