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



## BlueZone (3. September 2004)

*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*


----------



## Mirko D (3. September 2004)

Um das zu lösen brauchst du den Timestamp von jetz! 

Dann : 


```
$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


----------



## Ben Ben (3. September 2004)

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


```
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


----------

