Ich habe ein PHP-Skript, das eine neue Bestellung erstellt und fügt die Zeit jetzt + 15 Minuten in die Datenbank ein.MySQL wählen wo timenow> Datenbankzeit
Nach Ablauf von 15 Minuten kann der Benutzer nicht auf die Bestellseite zugreifen.
Im Admin-Panel möchte ich nur Datensätze anzeigen, die nicht abgelaufen sind, also meine Frage ist, welche Select-Anweisung würde ich dazu verwenden, und welche wäre am effizientesten?
SELECT * FROM `orders` WHERE datenow > date
Das "Datum" ist das Datum der Bestellung + 15 Minuten
P. S. Aternativ, gibt es eine Möglichkeit, dies mit PHP zu tun, so dass ich nicht zu viel Stress auf die Datenbank setzen muss?
Vielen Dank!
Ich neige dazu, Bigints zu verwenden und Timestamps zu speichern, anstatt die Datetime-Funktionen der Datenbanken zu verwenden. Dies ermöglicht eine einfachere Lesbarkeit (für mich zumindest lol) und Manipulation durch timestamp (int). Da die Auswahl nach den Bereichen> und
IncredibleHat
Ich möchte nur wissen, was die SQL-Abfrage wäre, dies zu tun? Da meine Abfrage natürlich falsch ist – rakupu
Sie sollten die Bestellungen in MySQL anstelle von PHP ausschließen, weil Sie möglicherweise 1000 abgelaufene Bestellungen in der Datenbank haben, aber nur 1 aktive - Sie wollen nicht 1001 Zeilen aus zurückgeben müssen MySQL einfach durchschleifen und das 1 in PHP greifen. (es sei denn, Sie reinigen diesen Tisch regelmäßig regelmäßig) – WOUNDEDStevenJones