Hurgl: Datum aus Datenbank formatiert ausgeben

Hi!

Ich hab in einer MySQL-DB ein Datum gespeichert (YYYY:mm:dd HH:ii).
Dieses lese ich jetzt mittels SELECT raus und möchte es auf einer PHP-Seite einach im Format dd.mm.YYY darstellen.
Klingt ja nicht so schwer, ich komm aber einfach nicht drauf und die Referenz für date() bringt mich auch nicht so richtig weiter...

Kann mir einer helfen? Dank im Voraus.

Gruss, Hurgl.

  1. Hi

    versuchs mal so:

    SELECT datum, DATE_FORMAT(datum, '%d.%m.%Y'),

    sollte eigentlich funktionieren.
    Sag bite bescheid obs klappt ;)

    Gruss
    Carl

    1. Das funktioniert leider nicht. Ausgabe genauso, wie der DB-Eintrag. Habe schon versucht die Abfrage zu modifizieren. Wollte aber leider alles nicht.

      SELECT datum, DATE_FORMAT(datum, '%d.%m.%Y'),

  2. Ich hab in einer MySQL-DB ein Datum gespeichert (YYYY:mm:dd HH:ii).
    Dieses lese ich jetzt mittels SELECT raus und möchte es auf einer PHP-Seite einach im Format dd.mm.YYY darstellen.
    Klingt ja nicht so schwer, ich komm aber einfach nicht drauf und die Referenz für date() bringt mich auch nicht so richtig weiter...

    Willst Du PHP-date() verwenden, mußt Du das Datum von MySQL in einen "unix timestamp" (Sekunden seit 1.1.1970 0 Uhr GMT) umwandeln lassen. unix_timestamp() ist die passende MySQL-Funktion dafür:

    select unix_timestamp(dein_datum) as ticks from blabla..

    PHP-date() selber ist recht einfach zu benutzen. Einfach die jeweiligen Buchstaben als "format" und die besagte Unix-Zeit angeben:

    if ($row=mysql_fetch_assoc($dbr))
         echo date("d.m.Y",$row["ticks"]);

    Brauchst Du das Datum in dem PHP-Skript nicht für andere Zwecke (d.h. Berechnungen), kannst Du alternativ auch MySQL selbst dazu veranlassen, einen Text nach Deinen Wünschen zu formatieren. Das reichhaltige Angebot an SQL-Datumsfunktionen findest Du in der MySQL-Anleitung unter "Functions for Use in SELECT and WHERE Clauses".
    In Deinem Fall müsste es ungefähr so aussehen:

    select date_format(dein_datum,"%d.%m.%Y") as datum from blabla..

    Der PHP-Teil nach mysql_query() dazu:

    if ($row=mysql_fetch_assoc($dbr))
         echo $row["datum"];

    Gruß,
      soenk.e

    1. Jaaaaaaaa, das hat geklappt. Es fehlte einfach nur das AS.
      Danke!!!!

      select date_format(dein_datum,"%d.%m.%Y") as datum from blabla..

      1. select date_format(dein_datum,"%d.%m.%Y") as datum from blabla..

        Jaaaaaaaa, das hat geklappt. Es fehlte einfach nur das AS.

        Immer schön auf die Bezeichnung (mysql_fetch_assoc()) bzw. Position (mysql_fetch_row()) achten. Zur Not klärt meistens auch ein Aufruf von var_dump() zusammen mit dem MySQL-Ergebnis, was eigentlich drin ist im Überraschungsei ;)

        Gruß,
          soenk.e