Philip: Zeitvergleich mittels Sekunden

Hi,

ich habe eine Datenbank in der verschiedene Werte stehen, sowie die Zeit, wann diese aktualisiert wurde.

Jetzt möchte ich überprüfen, wieviel Zeit seit der Aktualisierung vergangen ist.

Genügt es, die Zeit - "time()" - in der DB einfach als Integer(10) zu speichern und dann wieder mit "time()" zu vergleichen, oder gibt es dadurch irgendwelche Probleme?

In der MySQL DB gibt es ja extra den Typ timestamp, scheinbar unterscheidet sich dieser aber vom timestamp in PHP, weswegen ich mir die Umrechnerei sparen wollte.

  1. Genügt es, die Zeit - "time()" - in der DB einfach als Integer(10) zu speichern und dann wieder mit "time()" zu vergleichen, oder gibt es dadurch irgendwelche Probleme?

    Ja das geht genau so!
    Warum probierst du es nicht einfach aus, geht doch schneller als hier nen Thread zu starten ;)

    Grüße,
    Samy

    1. Warum probierst du es nicht einfach aus, geht doch schneller als hier nen Thread zu starten ;)

      Klappen tuts, das hab ich schon probiert :D

      Ich wollte nur wissen, ob es zu Problemen kommen kann mit den Zeitfunktionen (z.B. beim Vergleich von Integer mit time()) oder so :)

  2. Hello,

    es häängt selbstverständlich vom DBMS ab, was dieses kann.
    Ich nehme jatzt mal an, dass Du auch MySQL benutzen willst, weil Du es erwähnt hast.

    Da gibt es eine ganze Reihe von Funktionen für die Zeitrechnung:
    http://dev.mysql.com/doc/refman/5.0/en/date-and-time-functions.html

    Vermutlich werden dich die Funktionen

    • time_to_sec()
    • timediff()
    • now()

    ein gutes Stück weiterbringen.

    Ein Anwendungsbeispiel für die Ermittlung der "Loginzeit" findest Du hier:
    http://forum.de.selfhtml.org/archiv/2008/4/t170126/#m1111727

    Liebe Grüße aus Syburg bei Dortmund

    Tom vom Berg

    --
    Nur selber lernen macht schlau
    http://bergpost.annerschbarrich.de
  3. echo $begrüßung;

    Genügt es, die Zeit - "time()" - in der DB einfach als Integer(10) zu speichern und dann wieder mit "time()" zu vergleichen, oder gibt es dadurch irgendwelche Probleme?

    Es ist grundsätzlich eine gute Idee, Werte in der Datenbank in dem dort vorgesehenen Format abzulegen. Dann kann man auch die vom DBMS zu dessen Verarbeitung vorgesehene Funktionen verwenden.

    In der MySQL DB gibt es ja extra den Typ timestamp, scheinbar unterscheidet sich dieser aber vom timestamp in PHP, weswegen ich mir die Umrechnerei sparen wollte.

    Dafür bietet MySQL zwei Funktionen an, die Unix-Timestamps entgegennehmen und ausgeben können.

    echo "$verabschiedung $name";