mySQL Einträge der Letzten 24 Stunden. (Timestamp)

BlueZone

Grünschnabel
Hallo @ll...

Habe eine tabelle dort sind meherer einträge gespeichert und ein feld namens date_input in diesem Feld wird immer der Aktuelle Timestamp gespeichert als der eintrag gesetzt wurde.

Nun möchte ich folgendes ausgeben lassen habe nur keinen ansatz ein kleines beispiel wäre nett.
Also will alle einträge von heute wieder geben, und dann noch alle einträge der letzten woche.


Danke für euere Hilfe
 
Um das zu lösen brauchst du den Timestamp von jetz!

Dann :

PHP:
$jetzt = time();
$gestern = $jetzt - (60*60*24) ; // 60 Sek * 60 Sek * 24 Std = 1 Tag
$vor_einer_woche = $jetzt - (60*60*24*7) // 60 Sek * 60 Sek * 24 Std * 7 Tage = 1 Woche 

$sql="SELECT datefield FROM database WHERE datefield < '".$gestern."' OR datefield < '".$vor_einer_woche."'"; 
$result = mysql_query($sql);

Ich weiß zwar nicht ob es wirlich richtig ist, aber probieren geht ja über Studieren!

Gruß Mirko
 
Vielleicht klappts auch mit dem Statement so, allerdings geht das nur mit date oder datetimefeldern.... aber timestampfelder kann man ja problemlos dahinwandeln...

PHP:
SELECT * FROM `tabelle` WHERE DATEDIFF(NOW(),`deindatumsfeld`) <= 7 ;

Datediff geht aber erst ab mysql 4.1.1 aber es gibt auch noch genug andere Datumsfunktionen mit denen man soetwas als workaround bewerkstelligen kann. Mehr dazu unter: http://dev.mysql.com/doc/mysql/en/Date_and_time_functions.html
 
Zurück