MySQL - Den nächsten und vorherigen Datensatz ermitteln

Ein Beispiel für eine so genannte Blätter-Funktion (Pagination). Der Platzhalter $id enthält eine ID (z.B.: vom Ergebnis einer Suchanfrage an die DB).

// Der vorherige Datensatz (sortiert nach dem Datum)

SELECT `date`, `name`, `id`
 FROM `table` 
 WHERE `date` < ( SELECT `date` FROM `table` WHERE `id` = $id )
 ORDER BY `date` DESC LIMIT 0,1


// Der nächste Datensatz (sortiert nach dem Datum)

SELECT `date`, `name`, `id`
 FROM `table` 
 WHERE `date` > ( SELECT `date` FROM `table` WHERE `id` = $id )
 ORDER BY `date` ASC LIMIT 0,1

// Der vorherige Datensatz (sortiert nach dem Namen)

SELECT `date`, `name`, `id`
 FROM `table` 
 WHERE `name` < ( SELECT `name` FROM `table` WHERE `id` = $id )
 ORDER BY `date` DESC LIMIT 0,1


// Der nächste Datensatz (sortiert nach dem Namen)

SELECT `date`, `name`, `id`
 FROM `table` 
 WHERE `name` > ( SELECT `name` FROM `table` WHERE `id` = $id )
 ORDER BY `name` ASC LIMIT 0,1

Bausteine  Alle Anzeigen

Eine zufällige Auswahl von Codeschnipseln aus den Bereichen HTML, CSS, PHP, JavaScript und MySQL.

<b> Hervorheben (Physische Auszeichnung)

CSS - Fehleingaben in Formularen mit CSS hervorheben

PHP - Spider Bots ausschließen

JavaScript - Den Wert des ausgewählten Optionsfelds auslesen

MySQL - Summe einer Spalte ermitteln

Aktualität vortäuschen
Viele Seiten werben mit "aktuellen News", die in Wirklichkeit Wochen alt sind. Wenn man aktuelle News verspricht, dann sollte man diese auch bieten, ansonsten sollte man lieber darauf verzichten.