Halihallo Forumer
Ich hatte vor kurzem ein kleines Problem:
Machte eine Homepage mit einem "höchst" primitiven CMS. Beiträge/Artikel/Dokumente werden mit einer eineindeutigen ID in der Datenbank verlinkt. Hier entstand ein kleines Problem:
Wenn die Daten eingelesen werden (setup - Programm), waren die ID's nicht konsistent auf allen Systemen (lokaler PC und Webserver), da die Dokumente nicht in gleicher Reihenfolge eingelesen wurden. Dieses Problem liesse sich ja einfach ändern, aber was passiert, wenn ein neuer Eintrag in das System eingefügt wird, bzw. lokal und online andere Einträge veröffentlich werden? - Die ID's stimmen - auf Teufel komm raus - nicht überein und die Dokumente sind völlig falsch verlinkt... Bekanntes Problem??? - Hab mir mal einige Gedanken zu einer "besseren" Lösung gemacht und vielleicht hilfts wem, bzw. hat jemand einige guten/konstruktiven Kommentare hierzu:
„Immer diese Indizes“ :-((
Oftmals werden die Inhalte von Artikeln in CMS - Systemen durch eine ID eineindeutig referenziert. Klar bietet dies einige Vorteile, aber sie sind auch lästig und bei Veränderungen der Inhalte bzw. Erweiterung derselben nervtötend... Sobald eine ID wechselt (z. B. weil der Artikel auf gewissen Systemen anders in die Datenbank eingeordnet wird) stimmen alle Links nicht mehr. Es artet in ein wildes Suchen nach Dokumenten aus, welche den genannten Artikel referenzieren (bzw. manuelle Eintragungen in die Datenbank). Oder man erstellt einen neuen Artikel zu einem bestimmten Thema und muss ihn jetzt manuell in jedem Dokument verlinken, welches ein verwandtes Thema behandelt...
Ich habe mich auf die Suche nach einer anderen Lösung gemacht und habe folgendes Zusammengereimt:
Die ID sagt eigentlich überhaupt nichts über den Inhalt des Dokumentes aus; es ist eine abstrakte und willkührliche Bezeichnung für ein Dokument. Dadurch entsteht erst das genannte Problem. Die Lösung: Artikel müssen inhaltsbezogen referenziert werden! - Nicht durch die ID's, sondern durch Kern- / Keywords. Wenn dies geschehen ist, kann man den Prozess der Dokumentenverknüpfung automatisieren, d. h. jedesmal, wenn ein Link auf ein Dokument, welches mit Keywords referenziert wird, zeigt, wird eine Suchabfrage gestartet, welche alle themenverwandten Dokumente in der Datenbank auffindet und dem Besucher zur Auswahl ausgibt (bzw. wenn nur ein Dokument gefunden wird, gleich darauf weiterleitet; bzw2. das Beste/Treffendste gleich zum Client sendet).
Umsetzung
Natürlich können auch die Keywords durch ID's repräsentiert werden, sodass der ID - Philosophie gewahrt bleibt und so würde dies ausschaun:
/show_article.pl?ID=2545,945,3853 # KeywordListe
KeywordID KeywordContent
2545 hello
945 world
3853 kochen
3854 Informatik
DocumentID KeywordList Source
1 2545, 945 www.bla1.ch
2 3853,3854 www.bla2.ch
3 98543 www.hilfe.ch
so, durch das obengenannte Statement würden nur die Dokumente 1 und 2 gefunden werden, wobei ersteres treffender war und somit selektiert und zum Client gesendet wird.
Viele Grüsse
Philipp