FFD FAM – Foto – Datenbank

Mit FAM habe ich ein prima Werkzeug zum verwalten meiner Fotos, aber bei über 100 Albensammelodner (ASO), über 1000 Alben und deutlich über 66 Tausend Bilder ist es nicht wirklich einfach ein bestimmtes Bild oder beliebige Bilder zu einem bestimmten Thema zu finden. An der Stelle hilft die Datenbankschnittstelle von FAM, die es ermöglicht die ASO-, Alben- und Bilddaten in einer Datenbank zu durchsuchen und zu Katalogisieren und so das Auffinden bestimmter Bilder oder beliebige Bilder zu einem Thema zu ermöglichen.

Die Datenbankschnittstelle durchsucht alle ASO, Alben und Bilder und erstellt CSV-Datein mit denen eine SQL-Datenbank befüllt werden kann. Zur Zeit werden 5 CSV-Datein, also Daten für 5 Tabellen, erzeugt. Diese CSV-Daten werden von der Datenbankschnittstelle automatisch in FFD (FAM – Foto – Datenbank) importiert.

Die FFD (FAM – Foto – Datenbank) ist eine Applikation die aus zwei Teilen besteht, einer mySQL Datenbank und einer dynamischen Webseite die in PHP5 programmiert ist. Für den Datenbankteil wird mySQL verwendet könnte aber auch ohne Probleme zum Beispiel eine ORACLE Datenbank sein, dann müsste lediglich das Importskript angepasst werden. Die Datenbank besteht zur Zeit, wie schon oben erwähnt, aus 5 Tabellen, eine jeweils für ASO-. Alben- und Bilddaten, eine für ASO-Gruppen und eine für Albengruppen. Die sechste für Bildergruppen ist zur Zeit noch nicht implementiert da ich mit dem Sortieren der Bilder ohnehin noch nicht so weit bin und so noch keinen Nutzen hätte.

EER-Diagramm

Über die ASO-Gruppen können Albensammelordner zu Gruppen zusammengefasst werden, wie zum Beispiel Museen, Urlaub usw. d.h. mehrere Albensammelodner gehören einer übergeordneten Gruppe an. Es kann also jeweils einen Albensammelordner für zum Beispiel „Museen: Saalburg „, „Urlaub: 2010“, „Museen: Deutsches Museum“ und „Urlaub: 2011“ geben, dann gehören die beiden Museen Albensammelodner zur ASO-Gruppe „Museen“ und die beiden zum Thema Urlaub zu der ASO-Gruppe „Urlaub“. Nach dem gleichen Schema kann mit Alben verfahren werden. Es können also in mehreren oder ein und dem selben ASO Alben zu einer Gruppe geben, es kann somit in „Urlaub: 2010“ und in „Urlaub: 2011“ jeweils ein Album „Anreise: …“ geben. Beide Alben, obwohl in unterschiedlichen Albensammelordner gehören der Alben-Gruppe „Anreise“ an. Die Logik ist zusammengefasst ganz einfach, egal ob es sich um die Bezeichnung für ein ASO, Album oder Bild handelt sieht immer so aus: „[Gruppenbezeichnung]: [Bezeichnung]“. ASO, Alben oder Bildbezeichnungen die nicht so gebildet werden gehören keiner Gruppe an was eine zulässige Option ist wenn man keine Gruppenzugehörigkeit möchte. In der Theorie hört sich das jetzt evtl. etwas kompliziert an ist es aber wirklich nicht. Ich habe lange überlegt wie ich das Thema lösen soll, möglichst intuitiv und vor allem ohne zusätzlichen Arbeitsaufwand für den Anwender. Daher erschien mir die Lösung „Gruppenbezeichnung Doppelpunkt ASO/Album/Bildbezeichnung“ am intuitivsten.

Zur Abfrage der Datenbank steht dann eine dynamische HTML-Seite zur Verfügung. Die HTML-Seite wurde in

Webseite zur Datenbankabfrage

PHP5programmiert und setzt einen laufenden WEB-Server voaraus, zum Beispiel einen Apache. Die Seite besteht aus drei Teilen, einen Datenbank-Informationsteil (A), ein Selektionsteil (B) und den Daten Anzeigeteil (C). Im Datenbank-Informationsteil (A) werden die wichtigsten Informationen zur FFD (FAM – Foto – Datenbank) angezeigt, so zum Beispiel die Menge der Bilder, Alben und ASO sowie die Anzahl der ASO- und Alben- Gruppen. Sollte eine Verbindung zur Datenbank nicht möglich sein, weil die Datenbank nicht läuft oder die Zugangsdaten nicht stimmen, wird dies deutlich mit einer Fehlerbeschreibung angezeigt; bis jetzt hatte ich den Fall noch nicht im Echtbetrieb, für die Entwicklung habe ich den Fehlerfall simuliert.

Selektionsteil (B)

Im Selektionsteil (B) kann angegeben werden wonach gesucht werden soll und ob in der Anzeige nur Albensammelordner oder auch Alben und später mal Bilder angezeigt werden sollen. Die Selektion und Anzeige der Bilder habe ich wie gesagt noch nicht implementiert da noch zu wenige Bilder auch nur halbwegs sinnvoll beschriften sind, da habe ich wohl in den letzten Jahren ein wenig geschlampt. Das Implementieren der Bilder Selektion ist aber nur noch eine reine Fingerübung da es von Anfang an berücksichtigt und eingeplant wurde. Selektiert werden kann bei Alben wie auch bei Albensammelorder nach der Gruppe und ggf. noch nach einem Suchausdruck in der Bezeichnung gesucht werden. Als Beispiel könnte man suchen nach: In allen Albensammelodner der Gruppe „Urlaub“ in deren Bezeichnung das Wort „Ostern“ vorkommt. Weiter könnte man dann die Suche noch bis auf die Albenenbene verfeinern zum Beilpiel der Gruppe „Zimmer“ mit dem Text in der Bezeichnung: „Dusche“. Die Suche würde dann alle Alben zu als Ergebnis Liefern mit Bildern der Duschen im Zimmer sämmtlicher Osterurlaube. Auch wenn das Beispiel ein wenig albern scheint so zeigt es doch recht deutlich, dass wenn man bei der Vergabe von Albensammelordnern und Alben etwas geschickt vorgeht man im nachhinein eine recht feine und genaue Bildersuche erzielen kann.

Anzeigeteil (C)

Im dritten Teil (C), dem Anzeigeteil bekommt man das Ergebnis der Abfrage zu sehen. Hat man die Alben in die Anzeige/Suche mit einbezogen sieht man nicht nur die Albensammelordner sondern auch die Alben. Bei der Albenanzeige kann man noch eine Sortierreihenvolge angeben, ob die Alben nach ihrer fortlaufenden Nummer oder alphabetisch sortiert werden sollen. Die Anzeige der Albensammelodner und der Alben sind Links, so dass man wenn man auf einen Albensammelordner oder Album klickt man sofort die entsprechende HTML-Seite dazu angezeigt bekommt. Will man das Ergebnis der Suche aufhaben oder weitergeben so kann von dem Ergebnis der Suche eine PDF-Datei gespeichert werden. Zum Speichern des PDF einfach oben im Datenbank-Informationsteil (A) auf das PDF-Symbol klicken und das angezeigte PDF speichern.

Um Fehler im Programm besser suchen zu können wird vom Programm eine Log-Datei geschrieben in der alle ausgeführte Suchanfragen abgespeichert werden. Das Log bekommt man zu sehen wenn man im Datenbank-Informationsteil (A) auf das Symbol für die Log-Datei klickt.

In der Praxis hat sich das Programm als sehr gut erwiesen, ich arbeite sehr viel damit und habe kaum offene Wünsche, Die PDF Ausgabe.die Handhabung einer eBay-Transaktion ist mit Sicherheit schwieriger.

Die Zusammenfassung aller Artikel zum Thema FAM:
FAM – Fotoalbenmanager

Advertisements

Kommentar verfassen

Trage deine Daten unten ein oder klicke ein Icon um dich einzuloggen:

WordPress.com-Logo

Du kommentierst mit Deinem WordPress.com-Konto. Abmelden / Ändern )

Twitter-Bild

Du kommentierst mit Deinem Twitter-Konto. Abmelden / Ändern )

Facebook-Foto

Du kommentierst mit Deinem Facebook-Konto. Abmelden / Ändern )

Google+ Foto

Du kommentierst mit Deinem Google+-Konto. Abmelden / Ändern )

Verbinde mit %s