Ankündigung

Einklappen
Keine Ankündigung bisher.

problem mit date

Einklappen

Neue Werbung 2019

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

  • socke
    hat ein Thema erstellt problem mit date.

    problem mit date

    Also, ich lese aus der Datenbank ein Timestamp heraus. das herauslesen ist nicht das problem. nun will ich mit date diesen Timestamp in ein anschauliches format umwandeln:

    z.B. mit dem heutigem Timestamp: 20051201203924

    PHP-Code:
    echo date("d-m-y",$n->datum); 

    jedoch funktioniert das nicht. Ich bekomme da 19.01.38 als lösung.

    Dabei wollte ich doch nur dd.mm.yy (z.B. 1.12.05) ....

  • Gast-Avatar
    Ein Gast antwortete
    SQLs Funktion UNIX_TIMESTAMP() erwartet einen Parameter, in den du deinen SQL-TIMESTAMP reinsetzen kannst:

    Code:
    SELECT UNIX_TIMESTAMP(datum) AS datum2 FROM news
    Zum Speichern eines Unixstamps in einem SQL-TIMESTAMP-Feld kannst du FROM_UNIXTIME() verwenden, wenn ich nicht irre:

    Code:
    INSERT INTO news SET datum = FROM_UNIXTIME(1234566789)

    Einen Kommentar schreiben:


  • xabbuh
    antwortet
    Wenn der Spaltentyp in deiner Datenbank TIMESTAMP ist, dann kannst du dort keine UNIX-Timestamps abspeichern. Dafür bräuchtest du eine INT-Spalte.
    In PHP kannst du ein Datum, das im Format eines MySQL-Timestamps vorliegt, mit strtotime() in einen UNIX-Timestamp umwandeln.
    Den Spaltentyp Timestamp benutzt man eigentlich auch nur dann, wenn man möchte, dass die Spalte bei Neuanlage und / oder Bearbeitung eines Datensatzes automatisch einen Wert zugewiesen bekommt, ohne das man diesen explizit angeben muss. Ist das nicht gewünscht, bietet sich eher DATETIME als Spaltentyp an.

    Einen Kommentar schreiben:


  • Gast-Avatar
    Ein Gast antwortete
    Zitat von socke
    Wie macht man das?
    Was wäre mit einem Blick ins Manual?

    Einen Kommentar schreiben:


  • md5hash
    antwortet
    so früh ist es ? uff...

    Einen Kommentar schreiben:


  • socke
    antwortet
    also wenn ich folgenden SQL befehl ausführe:

    UPDATE `news` SET `datum` = UNIX_TIMESTAMP( )

    dann steht: 00000000000000 als Timestamp in der Spalte Datum ...

    Wie macht man das?

    Einen Kommentar schreiben:


  • Flor1an
    antwortet
    oder in php mit time()

    Einen Kommentar schreiben:


  • Gast-Avatar
    Ein Gast antwortete
    Zitat von socke
    aber nicht UNIX TIMESTAMP, mit welcher SQL funktion generier ich sowas?
    UNIX_TIMESTAMP()

    Einen Kommentar schreiben:


  • md5hash
    antwortet
    genau weils kein unix timestamp ist, das ist dein problem.

    sefan.

    teile ihn doch einfach mit regulären ausrücken, KA obs da ne funktion für gibt.

    Einen Kommentar schreiben:


  • socke
    antwortet
    ja jetzt sehe ich das problem:

    20051201203924
    ist der timestamp mit der sql funktion now() .... beim genaueren hinsehen:
    2005 12 01 20 39 24 also datum und uhrzeit aber nicht UNIX TIMESTAMP, mit welcher SQL funktion generier ich sowas?

    Einen Kommentar schreiben:


  • md5hash
    antwortet
    geb mir mal einen time stamp bitte.

    Einen Kommentar schreiben:


  • socke
    antwortet
    ne, die serverzeit läuft richtig:

    wenn ich das machr: date("d.m.Y"); zeigt es mir das heutige datum an,

    und nicht 19.01.2038

    Einen Kommentar schreiben:


  • md5hash
    antwortet
    dann guck dir die serverzeti doch mal an

    Einen Kommentar schreiben:


  • socke
    antwortet
    dann muss die serverzeit falsch laufen, habs den Timestamp über MYSQL now() generiert ....

    Einen Kommentar schreiben:


  • md5hash
    antwortet
    villeicht falsche timestamps?

    Einen Kommentar schreiben:

Lädt...
X