Top3 Datensätze abrufen

Hallo zusammen,

ich habe eine HTML/PHP-Seite, die mit einer SQL-Datenbank verknüpft ist. Auf der Seite kann man Kommentare hinterlassen, die hinterher bewertet werden können. Nun möchte ich stets die drei am besten bewerteten Kommentare anzeigen.

Nun habe ich es glaube ich geschafft, die drei Datensätze zu den besten Kommentaren auszulesen:

<?php

$sql = "
	SELECT * FROM bewertungen
	WHERE Veranstaltungsname = 'Auftritt1'
	ORDER BY 'Bewertung_Kommentar'
	LIMIT 3";

$result = mysqli_query($con,$sql);
$topComments = mysqli_fetch_assoc($result);

?>

Nun weiß ich aber leider nicht, wie ich mit diesem Array umgehen kann. Darum wäre entweder ein Tipp, wie das funktioniert (wie ich das irgendwie aufspalte oder so) oder ein Tipp, wie ich die drei Datensätze in jeweils ein Feld auslese, super.

Kann mir da einer helfen?

Die DB sieht so aus:

Danke schon mal und viele Grüße!
Juli

Hallo,

mysqli_fetch_assoc liefert ein assoziatives Array, in Perl ein Hash genannt.
Anders als in einem numerischen Array werden hier die Einträge nicht einfach durchnummeriert (von 0 bis n), sondern jeweils mit einem Namen versehen. Praktischerweise mit dem Namen der Datenbank-Spalte.

Wenn ich mir dieses Beispiel hier anschaue, fehlt dir allerdings der Schritt, der aus dem Gesamtergebnis mit drei Kommentaren jeweils einen zur Ausgabe extrahiert:
https://www.w3schools.com/php/func_mysqli_fetch_assoc.asp

Wenn du es richtig machst sollte ein

print $topComments["Kommentar_Body"]

dir dann jeweils den Kommentar zurückliefern.

Gruß,
Steve