[PHP] mysql_Query

TheWolf

Mitglied
Hallo
hab ein kleines Problem mit einem Datenbank Query:

Erstmal die Tabellenstruktur

id, art, titel, time

nun ein paar beispieleinträge

1, forum, Test, (irgendein Timestamp)
2, antwort, 1, (nächster Timestamp)
3, forum, Test2, (Timestamp zwischen den beiden Antworten)
4, antwort, 2, (noch späterer Timestamp)


Wenn ich jetzt die Forumsübersicht erstelle suche ich nach
where art = 'forum' und sortiere diese nach time.

Jedoch möchte ich, dass diese nach der letzten antwort sortiert werden.

Jetzt muss ich also nach Einträgen suchen die als 'titel' die ID des Beitrages haben und als 'art' "antwort".

Ich hoffe ich hab mich nicht zu wirr ausgedrückt :)

mfg
wolf
 
Hast du nur eine Tabelle zu Verfügung, oder wieso befinden Sich Daten unterschiedlichen Entitäten in einer Tabelle? Ich empfehle dir erst einmal etwas mehr Struktur in deine Datenbank zu bringen, sprich: Foren- und Antwortsdaten separat in jeweils eine Tabelle. Solch eine Struktur könnte etwa so aussehen:
Code:
CREATE TABLE `forum` (
	`id` INT UNSIGNED NOT NULL AUTO_INCREMENT,
	`titel` VARCHAR(64) NOT NULL,
	PRIMARY KEY (`id`)
);

CREATE TABLE `antwort` (
	`id` INT UNSIGNED NOT NULL AUTO_INCREMENT,
	`idforum` INT NOT NULL,
	`inhalt` TEXT NOT NULL,
	`zeit` TIMESTAMP(12) NOT NULL,
	PRIMARY KEY (`id`)
);
Ich hab's einfach kurzerhand als MySQL-Ausdruck geschrieben.
 
Das mit der einen Tabelle war Absicht da ich das Script möglichst "einfach" halten wollte :)

News, Linkliste, Kommentare usw. werden alle in die selbe Tabelle eingetragen.
Daher brauche ich auch nur eine Datei um alles einzutragen. Und auch die Anzeige ist sehr einfach :)

Ich werde jetzt wohl einfach den timestamp des Beitrags bei jeder Antwort ändern.
Ist ja keine große seite wo man genau wissen muss wann der Beitrag erstellt wurde.

mfg
 
Zurück