webForumDet fria alternativet

Formatera datum

4 svar · 278 visningar · startad av dahlgren

dahlgrenMedlem sedan aug. 20011 442 inlägg
#1

Hej

Jag lyckas inte få till formatering av ett datum som jag vill.
Det ligger lagrat i en databas så här: 20050523134038

echo date("ymd",$r['lastlogin'] );

Tyvärr ger det 380119 och inte 050523 som jag vill. Vad är felet?

SimonGMedlem sedan maj 2000437 inlägg
#2
echo date("ymd");

bör väll funka, har inte testat dock.

MatteMedlem sedan aug. 20002 970 inlägg
#3

Formattera det i SQL-frågan:

SELECT DATE_FORMAT(lastlogin, '%y-%m-%d') AS lastlogin ...

Fungerar åtminstone i MySQL.

dahlgrenMedlem sedan aug. 20011 442 inlägg
#4

Det fungerar inte riktigt. har jag förstått dig rätt om jag har lagt till din kod i min sql sats på följande vid?

SELECT DATE_FORMAT(User.lastlogin, '%y-%m-%d') AS lastlogin User.username, User.logins, User.permission_id, Permissions.name FROM User, Permissions where User.permission_id=Permissions.id 
ORDER BY username

Det ger:

You have an error in your SQL syntax. Check the manual that corresponds to your MySQL server version for the right syntax to use near 'User.username, User.logins, User.permission_id, Permissions.nam

PeeerMedlem sedan mars 20025 362 inlägg
#5

Du har missat ett kommatecken

SELECT DATE_FORMAT(User.lastlogin, '%y-%m-%d') AS lastlogin, User.username, User.logins, User.permission_id, Permissions.name FROM User, Permissions where User.permission_id=Permissions.id 
ORDER BY username

Anledningen till att din date()-kod inte fungerade är att den andra parametern ska vara ett unix timestamp. Det du skickar in är ett vanligt datum/tidpunkt utan bindesstreck.

Tråden flyttas från PHP!

129 ms totalt · 3 externa anrop · cache AV · v20260731051352-full.56cc9887
0 ms — hämta statistik (cache)
0 ms — hämta forumlista (cache)
127 ms — hämta tråd, inlägg och bilagor (db)