Bestimmen des Alters und Ordnen des Alters ohne Timestamp

Nitromaus

Erfahrenes Mitglied
Servus Leude, jetzt hab ich mal wieder ne Frage.
Sorry wenn sie schon öfters vorgekommen ist.

Es ist sehr einfach das Alter anhand eines Timestamp zu sortieren, aber da es ja auch Leute gibt, die vor 1970 geboren wurden, wird in meiner MySQL als z.B. 17.9.1967 gespeichert, aber wie ordne ich das nun richtig. Zudem soll es möglich sein anhand dieser Daten jeden Tag auszugeben wer Geburtstag hat, das soll aber dynamisch sein, und nicht nur nach dem Jahr gehen. Wenn es nicht mit dieser Art geht wäre es sehr nett wenn ihr mir die Möglichkeit mit einem Zeistamp erklärt. Thanks im voraus.
 
in dem format kannst du es garnicht ordentlich sortieren (jedenfalls nicht per mysql-query)...

dreh das datum um (1967.09.07) und schon kannst du es prima sortieren ...

ORDER BY date gibt dir dann das ordentlich in reihenfolge aus:
1967.09.07
1967.09.08
1968.01.01

in deiner version waere der 19.8.1967 groesser als der 17.9.1967 (durch die 19 am anfang) und das willst du ja nicht wirklich oder ?

aber was spricht dagegen das in einem unix-timestamp oder mysql-timestamp zu speichern ?

zur anzeige des datums schreibst du dir halt ne kleine formatierfunktion ...

jeden tag anzeigen ob irgendwer geburtstag hat, kannst du natuerlich in beiden versionen:

PHP:
$today = date("Y.m.d");
$sql = "SELECT blah FROM wurst WHERE date = '".$today."'";
 
Zuletzt bearbeitet von einem Moderator:
thanks, das oben hilft mir aufjedenfall weiter.
Ich brauche das, denn man kann ja auch vor 1970 geboren sein.
Haben die Punkte bei ".$today." eine Bedeutung?
Und wie ist die Timestamp Methode?:-)
 
gecko hats dir doch schon hingeschrieben, aber ich schreibs nochmal ausführlicher ;).
Also, angenommen, die Geburtstage in deiner Datenbank sind varchar, oder so und sehen so aus: JJJJ.MM.TT (1969.11.23) dann bestimmst du das heutige Datum mit $myDate = date("Y.m.d");
dann enthällt $myDate z.B. 2002.11.23. Du machst die Abrafe von gecko und schreibst z.B.:
PHP:
if($mysql_result == $myDate) {echo "Alles Gute.";}
Genaueres über die date() Funktion im PHP manual.
 
Thanks Leute, mit den Punkten bin ich blöd, hab bloß nicht gescheit hingeschaut, mach ich doch auch so:rolleyes:
Ich kenn mich schon mit der date()-Funktion aus, aber was ist denn nun die bessere Methode. Das mit dem Geburtstag hab ich auch schon gecheckt, bloß ich hätte daran gedacht, das direkt aus der MySQL Tabelle mit einer speziellen MySQL-Funktion (mit Timestamps) rauszufiltern. Sonst is mir das schon klar wie es funktioniert.;)
 
Zurück