tutorials.de Buch-Aktion 05/2012
ERLEDIGT
NEIN
ANTWORTEN
4
ZUGRIFFE
4365
EMPFEHLEN
  • An Twitter übertragen
  • An Facebook übertragen
AUF DIESES THEMA
ANTWORTEN
  1. #1
    Avatar von multimolti
    multimolti multimolti ist offline Game Programmer
    Registriert seit
    Jan 2007
    Beiträge
    802
    Hallo!

    Ich habe einen Zeitpunkt in meiner Datenbank gespeichert (z.B. 2007-08-24 17:36:13) und den momentanen Zeitpunkt über date() als UNIX-Timestamp.
    Damit ich die verrechnen kann, müssen die erst mal gleiches Format sein, also habe ich eine Funktion gebastelt, die meine MySQL-Zeit in den Unix-Timestamp umwandelt. Habe sowas nicht fertig gefunden, aber selbst machen dauert ja nicht lange.

    Jetzt kann ich die einfach miteinander verrechnen, und bekomme die Differenz der UNIX-Zeiten raus.
    Wie kann ich es jetzt am Besten machen, das ich eine Ausgabe bekomme, je nachdem wie groß diese Differenz ist? Also z.B. dass da dann "3 Tage 4 Std. 25 Min." steht oder auch nur "2 Std. 15 Min."? Vielleicht kann ichs machen, indem ich abfrage, wie groß die Differenz ist (60 = 1 Min, 3600 = 1 Std,...) und das dann unterschiedlich formatiere, aber gibts auch einen einfacheren Weg?
    Oder am besten wäre eine fertige Funktion, die dass alles macht. Kennt ihr sowas?

    Schon mal Danke...
     

  2. #2
    Avatar von Online-Skater
    Online-Skater Online-Skater ist offline Mitglied Brillant
    Registriert seit
    Sep 2004
    Ort
    Rostock
    Beiträge
    891
    Auch du guck mal hier
    Alles mit SQL lösbar.

    Die Funktion DATEDIFF und NOW() sollten helfen ansonsten da mal nachschauen
    Geändert von Online-Skater (03.09.07 um 23:06 Uhr)
     

  3. #3
    Avatar von multimolti
    multimolti multimolti ist offline Game Programmer
    Registriert seit
    Jan 2007
    Beiträge
    802
    Dieses DATEDIFF macht leider nur die Tage, ich bräuchte mindestens noch Stunden!

    EDIT:
    Dafür gibt es TIMEDIFF, das ist gut, aber ich weiß leider nicht wirklich, wie ich das anwenden soll. Habe das gemacht:
    Code :
    1
    
    $result2 = mysql_query("TIMEDIFF('$lastlogin',NOW());");
    Aber jetzt kann ich nicht mit mysql_fetch_assoc arbeiten, das meint immer das $result2 keine supplied ressource sei.
    Wie muss ich das denn verwenden?
    Geändert von multimolti (04.09.07 um 20:47 Uhr)
     

  4. #4
    Denfie Denfie ist offline Mitglied Bronze
    Registriert seit
    Aug 2004
    Beiträge
    36
    Also ich stand auch schon mal vor dem Problem hab mir dann aber eine bestimmt zu komplizierte ausgabe geschrieben aber ich kann sie dir ja mal posten.

    zeit = Datetime als MySQL-Datenbank Stempel

    PHP-Code:
    $sql "SELECT ((UNIX_TIMESTAMP())-UNIX_TIMESTAMP(zeit)) As time FROM Datenbank";

        if( (
    $erg_user[$i]['time']/60) < 1)
         echo 
    "vor < 1 Minute";
        else
         if( (
    $erg_user[$i]['time']/60) < 5)
          echo 
    "vor < 5 Minuten";
         else{
          
    $hilfe 0;
          
    $sekunden $erg_user[$i]['time']%60;
          
    $hilfe floor($erg_user[$i]['time'] / 60);
          
    $minuten $hilfe%60;
          
    $hilfe floor($hilfe 60);
          
    $stunden $hilfe%24;
          
    $tage floor($hilfe 24);
          if(
    $erg_user[$i]['zeit'] != "0000-00-00 00:00:00")
          {
           if(
    $tage 0)
            echo 
    "vor ".$tage." Tagen ";
           else
            if(
    $stunden 0)
             echo 
    "vor ".$stunden." Stunden ";
            else{
             echo 
    "vor ".$minuten." min ";
             echo 
    $sekunden." sek ";
            } 
     

  5. #5
    Avatar von multimolti
    multimolti multimolti ist offline Game Programmer
    Registriert seit
    Jan 2007
    Beiträge
    802
    Danke vielmals, geht!
     

Ähnliche Themen

  1. php-Liste mit Zeit-Differenz
    Von julia29 im Forum PHP
    Antworten: 5
    Letzter Beitrag: 15.04.08, 11:18
  2. Zeit Differenz
    Von david_shilling im Forum PHP
    Antworten: 2
    Letzter Beitrag: 18.11.05, 10:04
  3. Differenz zwischen zwei Zeit-Stempel berechnen
    Von Shadow-Rider im Forum Visual Basic 6.0
    Antworten: 4
    Letzter Beitrag: 13.01.05, 11:19
  4. Unix Zeit
    Von Radeon im Forum PHP
    Antworten: 2
    Letzter Beitrag: 06.11.03, 11:55
  5. Aus Datum mach Unix-Zeit, nur wie?
    Von Subwoover im Forum PHP
    Antworten: 1
    Letzter Beitrag: 16.04.02, 22:21