Open source PHP Klasse für Nested Sets in MySQL

Was ist eine Baumstruktur?

Gerichteter Baum

Eine Baumstuktur wird in der Informatik oftmals benötigt um Daten zu strukturieren. Zum Beispiel ist das gesamte Dateisystem als Baum darstellbar. Oder Hierachien in einem Unternehmen. MySQL ist jedoch dafür bekannt Daten in einer tabellarischen Form auszulesen und zu speichern. Nested Stets kommen eigentlich aus der Mengenlehre aber lassen sich als Baum hin- und herwandeln. Lediglich die visuelle Darstellung ist anders.

Nested Sets in einer Liste?

Damals habe ich mal einen ganz kurzen Blogeintrag geschrieben, mit deren Hilfe man Bäume in MySQL effektiv speichern kann. Ich habe dazu jetzt mal die Zeit gefunden um eine simple PHP-Klasse zu schreiben, welche die einfachsten bzw. gebräuchlichsten Methoden unterstüzt:

  • Baum laden
  • Element einfügen
  • Element löschen (inkl. Kind-Elemente)
  • istKnoten? (bzw. hat Kinder?)
  • als HTML anzeigen

DEMO      DOWNLOAD als ZIP

Klasse


DEMO      DOWNLOAD als ZIP

Demonstration


DEMO      DOWNLOAD als ZIP

Cleantodo neu programmiert – SQLite Implementation

Um nach langer Abstinenz wieder einmal etwas zu programmieren, habe ich Cleantodo von Grund auf neu geschrieben und zwar mit einem neuen Datenbanksystem SQLite und das Ganze auch noch objektorientiert. Man braucht nur die PHP files auf den Server laden und kann dann auch gleich loslegen. Die Datenbank wird von selbst erstellt. Das ganze ist Multiuser fähig und man kann Tasks löschen und wiederherstellen. Der Quelltext wird opensource released werden und vlt. wird es ein kleines Plugin System geben. Es soll auf jeden Fall so modular wie möglich aufgebaut sein und man soll es vielleicht in Zukunft auf ein komplexes Arbeitsnetzwerk erweitern können.

Man kann mittlerweile auch mit MySQL sowie SQLite arbeiten. Das kann man in der config-Datei einstellen. Zurzeit ist alles mit HTML und PHP programmiert. Möchte das Ganze auf AJAX erweitern aber mit dem Zusatz das auch alles noch ohne JS bzw. AJAX funktioniert, also so eine Art Fallback.

Halte euch diesbezüglich noch auf dem Laufenden!

Die Zukunft von Benutzerinterface und GUI

Wie sehen die zukünftigen Bedienschnittstellen aus? Habe in einem YouTube-Video  ein echt interessante Konzepte und Einblicke von Jörn Loviscach endeckt.

Der nächste Schritt Richtung Zukunft

Es handelt von der Zukunft der Tablet-, Smartphone- und Computerschnittstellen und der nächsten Generation von Benutzerinterface und GUI. Deswegen wird auch näher auf die technische Seite eingegangen.

Erstens: unbedingt ansehen! Abschließend: ein sehr empfehlenswertes Video.