Ankündigung

Einklappen
Keine Ankündigung bisher.

MySQL probleme mit timestamp und time()

Einklappen

Neue Werbung 2019

Einklappen
X
  • Filter
  • Zeit
  • Anzeigen
Alles löschen
neue Beiträge

  • MySQL probleme mit timestamp und time()

    Hallo,

    Ich möchte aus eine MySQL Tabelle alle Datensätze auswählen, deren Timestamp Attribut "End" in der Zukunft liegt.
    Ich habe es so versucht:
    PHP-Code:
    $abfrage "SELECT * FROM tabelle WHERE UNIX_TIMESTAMP(End) > ".time().";"
    Er wählt auch die richtigen Datensätze aus, aber wenn ich nun für einzelne Datensätze die verbleibende Zeit in Sekunden anzeigen möchte:
    PHP-Code:
    $ergebnis mysql_query($abfrage);
    while(
    $row mysql_fetch_object($ergebnis))
    {
    echo (
    strtotime($row->End)-time());

    Werden mir negative werte (z.B. -30000) angezeigt. Weiß jemand was ich falsch gemacht habe, es muss ja eigentlich an der strtotime Funktion liegen

  • #2
    Irgendwo falsche Zeitzone eingestellt?

    BTW: Du kannst auch direkt 'End' mit NOW() vergleichen.

    Kommentar


    • #3
      Zitat von tkausl Beitrag anzeigen
      Irgendwo falsche Zeitzone eingestellt?

      BTW: Du kannst auch direkt 'End' mit NOW() vergleichen.
      Danke, ja die Zeit auf meinen System ist geht einige Stunden falsch, aber das sollte ja eigentlich nicht die Ursache sein, da der mit der Query schon ein korrektes Ergebniss erzieht wird

      Kommentar


      • #4
        PHP.de Wiki | Debugging:Leitfaden

        Kommentar


        • #5
          Zitat von ZartesKalb Beitrag anzeigen
          Danke, ja die Zeit auf meinen System ist geht einige Stunden falsch, aber das sollte ja eigentlich nicht die Ursache sein, da der mit der Query schon ein korrektes Ergebniss erzieht wird
          Ein Timestamp hat aber keine Zeitzone, ein DATETIME (bzw. ein Datum und eine Uhrzeit) aber schon. Jenachdem wo du also die Umrechnung machst können unterschiedliche Ergebnisse rauskommen.

          Kommentar


          • #6
            Zitat von tkausl Beitrag anzeigen
            Ein Timestamp hat aber keine Zeitzone, ein DATETIME (bzw. ein Datum und eine Uhrzeit) aber schon. Jenachdem wo du also die Umrechnung machst können unterschiedliche Ergebnisse rauskommen.
            Das ist mir durchaus bewusst, allerdings ist ja alles relativ verschoben und müsste eigentlich funktionieren

            Kommentar


            • #7
              "End" an sich scheint ja kein UNIXTIMESTAMP zu sein.
              Das vermute ich, so wie Du es in der WHERE-Klausel nutzt. In Deinem PHP-Teil gehst Du aber davon aus, dass es ein UNIXTIMESTAMP ist.

              Kommentar

              Lädt...
              X