You are not logged in.

wcf.regNote.message

Prometheus

Administrator

  • "Prometheus" started this thread

Posts: 3,278

  • Send private message

1

Monday, August 3rd 2009, 4:24pm

Brauch mal Hilfe bei einem Verständnissproblem des Befehls mktime

Hallo,

ich habe in einer Datenbank personenbezogene Daten wie Name, Adresse und unter anderem auch das Geburtsdatum als Timestamp hinterlegt. Nun möchte ich bei einer Suche die Möglichkeit haben alle Personen zu finden welche z.B. jünger wie 50 und älter wie 30 sind. Jetzt dachte ich mit mktime mal eben einen Timestamp zusammen bauen und daraus ne DB Abfrage und fertig. Aber irgendwas klappt da nicht so wie ich dachte.

PHP Source code

1
2
$globalvars['juengerwie'] = 50;
$ergebnis mktime(0,0,0,date("m"),date("d"),date("Y")+$globalvars['juengerwie'])

In Ergebnis steht nun -328669200 und nicht wie ich eigentlich dachte der Timestamp von dem Datum von heute gesehen vor 50 Jahren. Das heißt wenn ich nun in meiner DB vergleiche "geburtsdatum > '".mktime(0,0,0,date("m"),date("d"),date("Y")+$globalvars['juengerwie'])."'" kommt da auf keinen Fall das raus was ich wollte da geburtsdatum "01.05.1753" auch als Timestamp größer ist wie -328669200.

Irgendwie hab ich da grade einen Knoten im Gedanken und find den Ausweg nicht ;)

Gibt mir mkdate() nicht immer den Timestamp der angegebenen Zeitdaten zurück? Ist doch mkdate(stunde,minute,sekunde,monat,tag,jahr) oder nicht?
Jedwege Anfragen bitte an Technomausi oder ShaoKhan richten. Dieses Konto ist und bleibt inaktiv.

flo

Unregistered

2

Monday, August 3rd 2009, 6:40pm

http://www.php.net/manual/de/function.mktime.php
mktime gibt dir die sekunden zwischen einem gegebenen datum und dem 1. januar '70 aus...
probiers mal damit...

PHP Source code

1
2
3
4
$liZeitpunkt1=50;
$ldErgebnis=mktime(0,0,0,date("m"),date("d"),date("Y")-$liZeitpunkt1, -1);
echo date("d-m-Y"$ldErgebnis);
?>

hab die variablen nu unbenannt, weil bei mir ein fehler kam... hab das dann neu getippt...
die "-1" hinter $liZeitpunkt1 besagt, dass unbekannt ist ob Sommer- oder Winterzeit ist...
für andere einstellungen s.o. im link... so wie jetzt, versucht php das dann selbst herauszufinden
edit: und das "-" bei date("Y")-$liZeit... muss auch sein. sonst bekommst du ein falsches ergebnis zurück..

Similar threads

wcf.user.socialbookmarks.titel