Forum in Software

Hallo,

ich möchte funktionalitäten eines Forums in meine Software integrieren.

mein Problem ist:

die korrekte Darstellung der Beiträge.

Beim Erstellen eines neuen Beitrages, wird diesem eine fortlaufende Beitrags-ID zugewiesen. Nach dieser wird auch sortiert, so das der neue Beitrag zwangsläufig am Schluss angezeigt wird.
Da ich jedoch eine Anzeige erreichen möchte, das mein Antwort-Beitrag direkt unter dem Beitrag steht, dem ich antworten möchte, habe ich eine „Antwort_auf_Beitrag_ID“ meiner DB-Tabelle hinzugefügt.

www arbeitet auch mit Beitrags und Antwort-auf-Beitrags-ID´s…

Meine Frage ist, wie der eleganteste Weg ist, diese Funktionalität abzubilden, bzw. weis jemand wie es bei www gemacht wird, einen Antwort-Beitrag an der richtigen Stelle abzubilden?

Mit SQl komm ich auf jeden Fall nicht weit- meine erste Idee war es, 1nen SQL abzusetzen und das ganze inner Schleife(mit folgender Abfrage auf die jeweilige Antwort-ID) abzuarbeiten. Aber wie komme ich über mehrere Antworten-Ebenen?

Verständlich umschrieben? Für eure Tips vielen Dank im vorraus

Viele Grüße

Rasta

Hi Rasta,

Verständlich umschrieben? Für eure Tips vielen Dank im vorraus

Denke schon. Wenn du Oracle nutzt, gibt es dafür die CONNECT BY-Klausel. Schau mal in der Hilfe danach (bzw. hier: http://www.akadia.com/services/ora_treewalking_with_…)

Gruß

J.

Hallo Sancho,

genau sowas suche ich. Gibt es sowas auch für Access?

Gruß

Rasta

[Bei dieser Antwort wurde das Vollzitat nachträglich automatisiert entfernt]

Hi,

genau sowas suche ich. Gibt es sowas auch für Access?

Nein, leider nicht.

Ich hab eben ein wenig überlegt, wie man das abfragemäßig abbilden könnte, kam aber auf keinen grünen Zweig. Du mußt das wohl in der Anwendung erledigen.

Gruß

J.

Hi Sancho,

danke trotzdem.

habe es inzwischen per code realisiert

viele grüße

rasta

[Bei dieser Antwort wurde das Vollzitat nachträglich automatisiert entfernt]

Hallo,
anstatt einer selbstvergebenden ID könntest du den Artikelpfad manuell als ID abspeichern.

Zum Beispiel:

0001 -\> Artikel 1
00010001 -\> Antwort 1.1
00010002 -\> Antwort 1.2
00010002001 -\> Antwort 1.2.1
00010003 -\> Antwort 1.3
0002 -\> Artikel 2
00020001 -\> Antwort 2.1
00020002 -\> Antwort 2.2

Die Antworten zu zum Beispiel Artikel 1 (inkl. Ursprungsartikel) kannst du dann über

SELECT \* FROM artikel WHERE id LIKE '0001%'

ausgeben. Über die ID-Zeichenlänge kannst du zusätzlich noch Formatierung realisieren (z.B. entsprechendes Einrücken).

Oder du bildest die Baumstruktur über das „Nested Set Model“ ab:
http://develnet.org/36.html

gruss Markus

hallo markus,

an so eine lösung hatte ich bereits gedacht. das problem an der ganzen geschichte ist, das du je nach feld-typ(und feldstellen) schneller an die grenzen der logik stößt, als dir lieb ist.

aber vielen dank für den link – genau sowas suchte ich eigentlich :smile:

gruß

rasta

[Bei dieser Antwort wurde das Vollzitat nachträglich automatisiert entfernt]