C. Wilke: Problem beim logischen Aufbau einer Datenbank

Beitrag lesen

Hallo Leute,

ich hätte da folgendes Problem:

ich möchte ne datenbank erstellen, die aufgebaut ist praktisch wie ein Forum, wird aber keins ;)
aufgebaut in der Form

-Titel
   -Überschrift
        -Text
   -Überschrift
        -Text

usw...

Das Problem ist nun, wie ich die Datenbank aufbauen soll. Es wäre kein Problem wenn zu jedem Titel jeweils nur eine Antwort kommen würde, aber wie soll ich es machen, dass dann dahinter noch mehr Antworten hinzugefügt werden können, und dann nachher wieder ausgelesen werden können?!

Die Datenbank wird MySQL, Applikationssprache wird PHP sein....

Wäre nett wenn ihr mir da ein paat Tipps geben könntet

MfG

Flo

Wenn ich dich richtig verstanden habe, ist dein Problem,
daß du bei mehreren gleichen Titeln den Titel einmal hinschreiben willst und dann alle dazugehörigen ds?
Bsp:
Titel 1
MeldungzuTitel1
MeldungzuTitel1
MeldungzuTitel1
Titel 2
MeldungzuTitel2
MeldungzuTitel2

usw.

Du kannst ruhig ein Feld nehmen, welches jeweils den Titel beinhaltet, dann:
// deine query
if ($row=mysql_fetch_array($result))
{
$altertitel=$row[titel];  //muß einmal zu anfang gesetzt werden
do
{
  if ($altertitel!=$row[neuertitel]) // gabs den Titel schonmal?
  {  
  echo"$row[titel]<br>\n";    //gabs noch nicht, also hinschreiben
  echo"$row[ueberschrift]<br>\n";
  echo"$row[deintext]<br>\n";
  $altertitel=$row[titel];   //neuer alter titel
  }
  else   //titel war schon da, also nur inhalte schreiben
  {  
  echo"$row[ueberschrift]<br>\n";
  echo"$row[deintext]<br>\n";
  }
}
while ($row=mysql_fetch_array($result));
}

(ungeprüft!)
Also: der jeweils letzte titel wird in einer variablen festgehalten, dann wird geprüft, ob der letzte titel ungleich dem aktuellen ist, wenn dem so ist, muß der titel neu hingeschrieben werden, und es gibt einen "neuen" altentitel. Wenn nicht, wird nur der Inhalt, nicht der Titel hingeschrieben.

Hoffe, der code ist so richtig und auch verständlich.

CU,Carsten