Gorginio: Datumformat MySQL

Guten Abend.

Also ich ärgere mich jetzt schon den ganzen Abend mit der Funktion, damit ich das Datumformat vom Mysql Format (yyyy.mm.dd), auf das deutsche Format (dd.mm.yyyy) bringe.

Also dank alter Forumbeiträge bin ich einmal soweit gekommen.

$abfrage = "select * from termine order by Enddatum";
#Abfrage von Datenbank

$result = mysql_query($abfrage);
while($row  =  mysql_fetch_object($result))  {

$date=($row->Enddatum);
#Feld mit Namen Enddatum ist jetzt wichtig und soll mittels folgender
#Funktion geändert werden.

function MakeGerDate($date){
$datum=explode("-",$date);
$date="$datum[2]-$datum[1]-$datum[0]";
return $date;
}

?>
...
<!-- Aussgabe-->
<p class="datum"><?=$date?></p>

Die Ausgabe, die ich erhalte ist gleich wie ohne der Funktion (MySQL FORMAT) und weiters wird nur eine Zeile aus der Tabelle ausgegeben.

Vielleicht kann mir ja irgendjemand verraten, was ich hier falsch gemacht.

Thx Gorginio

  1. Hallo!

    $date="$datum[2]-$datum[1]-$datum[0]";

    $date="$datum[2].$datum[1].$datum[0]";
    -> DD.MM.YYYY

    Die Ausgabe, die ich erhalte ist gleich wie ohne der Funktion (MySQL FORMAT) und weiters wird nur eine Zeile aus der Tabelle ausgegeben.

    Eigentlich nicht! Die "Ausgabe" ("$datum[2]-$datum[1]-$datum[0]") sollte DD-MM-YYYY liefern.

    Vielleicht kann mir ja irgendjemand verraten, was ich hier falsch gemacht.

    Noch einfacher geht es mit der SQL-Funktion DATE_FORMAT().
    http://www.dclp-faq.de/q/q-datum-mysql.html
    siehe DATE_FORMAT():  http://www.mysql.de/documentation/mysql/bychapter/manual.de_Reference.html#Date_and_time_functions

    MfG, André Laugks
    L-Andre @ gmx.de

    1. Hallo!

      Also mit der folgenden Funktion kann ich das Datum nun wirklich dem deutschen Format anpassen,

      PROBLEM: Nur der erste Eintrag aus der Datenbank wird ausgegeben, alle anderen werden nicht dargestellt,

      Wie muß ich das anstellen. Wenn ich nämlich keine Funktion zur Formatiereung des Datum drinnen habe, erhalte ich alle Einträge!

      lg Gorginio

      Auszug:
      ...
      $abfrage = "select * from termine order by Enddatum";
      $result = mysql_query($abfrage);
      while($row  =  mysql_fetch_object($result))  {

      ?>
      <table width="90%" border="0" cellspacing="0" cellpadding="0">
        <tr><hr>

      <?
      $datum=($row->Enddatum);
      function datumfunction($datum) {
        list($jahr, $monat, $tag) = explode("-", $datum);

      return sprintf("%02d.%02d.%04d", $tag, $monat, $jahr);
        }
      ?>
      <td width="15%"><p class="datum"><?=datumfunction($datum)?></p></td>