Robert B.: MySQL Abfrage sortieren

Beitrag lesen

Hallo Kevin,

Ich habe unter phpMyAdmin eine Tabelle nach der Spalte "datum" sortiert. Doch wenn ich die Tabelle mit Hilfe von PHP auslese, ist diese Ausgabe nicht sortiert.

Kleiner Tipp: In phpMyAdmin wird das SQL-Statement angezeigt, mit dem die Ausgabe erzeugt worden ist.

Der Abfrage-Code sieht so aus:

<?php

// …

$select = "SELECT * FROM `kalender` WHERE datum BETWEEN '$d1' AND '$d8'";

$erg_select = mysqli_query($db_link, $select);

Brauchst du denn „beliebig alle Felder“ – SELECT * oder weißt du schon vorab, welche Felder du benötigst? Ein SELECT datum,ereignis ist u.U. performanter. Und dann noch ein Hinweis zur Sicherheit: Durch manipulierte Variablen $d1 oder $d8 kannst du prinzipiell aus deinem SQL-Statement ausbrechen. Nimm lieber ein prepared statement.

In deinem Schleifencode kannst du alle doppelten Anführungszeichen durch einfache Ersetzen, weil keine Variableninterpolation stattfindet. Und es muss natürlich $day['ereignis'] heißen.

Viele Grüße
Robert