PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : Probleme mit Spaltenformat



AlexBluemm
08-03-2001, 14:50
hi @ll,
ich will in mysql eine spalte als datum hinterlegen, was standardmaessig im format jjjj-mm-tt erfolgt. wie kann ich dieses format allerdings in tt.mm.jjjj aus- und eingeben lassen?

mni tnx de alex

09-03-2001, 07:27
Hallo,

meines Wissens nach gibt es keine Möglichkeit um das Umzustellen.

Habe eine kleine Funktion,die man aufruft mit :

echo dat(DB_Feldnamen, Switch)

.......

/* Switch besagt, welche Operation die Funktion ausführen soll (IN/OUT), der String ist das Datum */
/* Hope it helps martin.ament@gmx.de */

function dat($stringv,$switch)
{
if (strtoupper($switch)==strtoupper("in"))
{
/* Aus dd.mm.jjjj die einzelnen Strings herausholen */
$datj=substr($stringv,-4);
$datm=substr($stringv,3,2);
$datd=substr($stringv,0,2);
/* Dann den Rueckgabewert wieder zusammenbauen */
$retval=$datj."-".$datm."-".$datd;
return $retval;
}
elseif (strtoupper($switch)==strtoupper("out"))
{
/* Aus jjjj-mm-dd die einzelnen Strings herausholen */
$datd=substr($stringv,-2);
$datj=substr($stringv,0,4);
$datm=substr($stringv,5,2);
/* Dann den Rueckgabewert wieder zusammenbauen */
$retval=$datd.".".$datm.".".$datj;
return $retval;
}
else
{
/* Fehlermeldung ausgeben */
$retval="!Ungültiger Switch!";
return $retval;
}
}

......

Martin

AlexBluemm
21-03-2001, 00:31
danke martin, ich hab das problem dann auf folgende weise geloest:

$datum1 = mysql_result($result,$i,"datum");
$datestring = split("-",$datum1);
echo $datestring[2];
echo ".";
echo $datestring[1];
echo ".";
echo $datestring[0];

zeile1: datum aus der datenbank auslesen
zeile2: datumsvariable am bindestrich aufteilen jjjj-mm-tt
zeile3: tt ausgeben
zeile4 und 6: punkt als trennung im deutschen format
zeile5: mm ausgeben
zeile7: jjjj ausgeben

trotzdem danke
alex

21-03-2001, 22:26
supereinfach:

beim auslesen:

select *,DATE_FORMAT(SPALTENNAME,"d.m.Y") AS SPALTENNAME from tabelle

ansprechen kannst du diese spalte dan mit $row[SPALTENNAME] (PHP) , $row{SPALTENNAME} (perl)

voraussetzung ist, das SPALTENNAME vom typ DATETIME, DATE oder TIMESTAMP ist

olli

hoffe, es hat geholfen