ich zu einer Gruppe meiner Foren in Kategorien haben möchte, wie hier zu sehen:Wie verschiedene Foren in Kategorien gruppieren PHP
ich eine Datenbanktabelle, die einen Titel nimmt und eine ID erstellt genannt forum_categories
habe derzeit für alle erstellten Kategorien. Ich habe auch eine Spalte in einer Datenbanktabelle mit dem Namen forum_forums
(all die verschiedenen Foren, die ich kategorisieren möchte), die einen Wert mit dem Namen category_apart_of
nimmt.
Wie würde ich die Foren in ihrer richtigen Kategorie ID auflisten?
Vielen Dank!
Wenn Sie etwas von meinem Code sehen möchten, oder möchte ich etwas ausführlicher erklären, bitte sagen Sie mir.
Meine aktuellen Code für die Foren-Eintrag (Anmerkung: eine SQL-Abfrage alle Foren zu erhalten, ist oben):
<thead>
<tr>
<th style="width: 50%;">Forum</th>
<th style="width: 10%;">Threads</th>
<th style="width: 10%;">Posts</th>
<th style="width: 30%;">Latest Posts</th>
</tr>
</thead>
<tbody>
<?php
while($row = $stmt->fetch(PDO::FETCH_ASSOC)) {
$forumID = $row['forumID'];
$forum_title[] = $row['forum_title'];
$forum_description[] = $row['forum_description'];
$forum_total_threads[] = $row['forum_total_threads'];
$forum_total_posts[] = $row['forum_total_posts'];
$forum_latest_thread[] = $row['forum_latest_thread'];
$stmt2 = $db->prepare("SELECT * FROM forum_threads WHERE forum_thread_belongs_to = '$forumID'");
$stmt2->execute();
$count = $stmt2->rowCount();
echo '
<tr><td><h4 style="margin-bottom: 0px;"><a style="margin-bottom: 0px;" href="forum.php?id='
. $row['forumID'] . ' ">'.$row['forum_title']
. '</a></h4><br /><h6 style="margin-bottom: 0px; margin-top: 0px;">'
.$row['forum_description'].'</h6></td><td style="text-align: center;><span">'.$count
.'</span></td><td style="text-align: center;><span">'.$row['forum_total_posts']
.'</span></td><td>'.$row['forum_latest_thread'].'</td></tr>
';
}
?>
</tbody>
DDL für beide Tabellen:
CREATE TABLE IF NOT EXISTS `forum_forums` (
`forumID` int(11) NOT NULL AUTO_INCREMENT,
`forum_title` varchar(255) NOT NULL,
`forum_description` varchar(255) NOT NULL DEFAULT 'This forum does not have a description',
`forum_total_threads` int(255) NOT NULL DEFAULT '0',
`forum_total_posts` int(255) NOT NULL DEFAULT '0',
`forum_latest_thread` varchar(255) NOT NULL DEFAULT 'There are no new threads',
`forum_apart_of` int(11) NOT NULL,
`category_apart_of` int(11) NOT NULL,
PRIMARY KEY (`forumID`)
) ENGINE=MyISAM DEFAULT CHARSET=latin1 AUTO_INCREMENT=1 ;
CREATE TABLE IF NOT EXISTS `forum_categories` (
`catID` int(11) NOT NULL AUTO_INCREMENT,
`cat_title` varchar(255) NOT NULL,
PRIMARY KEY (`catID`)
) ENGINE=MyISAM DEFAULT CHARSET=latin1 AUTO_INCREMENT=1 ;
Ich bin ein wenig verwirrt durch Ihre Datenbank-Struktur. Könnten Sie bitte Ihre Frage bearbeiten, um eine ERD oder eine DDL einzuschließen? –
Ihre veröffentlichte DDL enthält nicht die Tabelle 'forum_threads', auf die in Ihrem Code verwiesen wird. –
Behoben, das tut mir leid. – Jakob