webForumDet fria alternativet

Nybörjare har kalender knas & tjafs....

Databaser & SQLur Databashanterare & SQL

9 svar · 310 visningar · startad av fjarne

Medlem sedan feb. 200128 inlägg
Frågan#1

Hejsan !
Här är en nybörjar fråga.
Jag har just börjat fibbla med mysql &
& provat att försöka göra en enkel evenemangs lista där man ska kunna lägga in tips om små skojiga evenemang som ska visas i en enkel tabell sorterat efter datum. Men ve & fasa - när man kollar på på tabellen så kommer datumen mellan 1 - 9 i ordningsföljd men datumen 10 - 19 hamnar sen ovanför 1-9...
Å ännu värre blir det när det går uppemot 20-31... ujejuj....

Så här hämtas de små tipsen
$jahapp = mysql_query("SELECT DATUM, PLATS, INFO FROM EVENEMANG order by DATE ASC");

Datumen har skrivits in såhär: 1/4 2/4 osv.

I mysql admin så har jag provat med olika "types" eller vad det nu heter för nåt, alltså det häringa varchar & integer, time & blob & allt vad det heter & ändrat i fältet DATUM men...ack, bara knas varje gång.
Måste man ha datumen i en annan form för att få ut listan i rätt ordning ?

MVH / fjarne :0)

Medlem sedan juli 20003 825 inlägg
#2

2001-03-28 - testa den varianten av datum.

------------------
"Never underestimate your opponents." - Name the movie.

Medlem sedan apr. 2000642 inlägg
#3

och datatypen DATE naturligtvis ;)

------------------
PeterSign v 2.3.36

Medlem sedan juni 20008 205 inlägg
#4

När man väl använder date kan man dessutom formatera med funktionen DATE_FORMAT(tidsstämpel, format)...

------------------
Life feeds on life feeds on life feeds on life feeds on life...

Medlem sedan feb. 200128 inlägg
#5

Tack !

Medlem sedan feb. 200128 inlägg
#6

Hallå i surfarstolen!
Jag måste nog fråga om en grej till här nu alltså på samma skojiga evenemangs-tips-tabell-tema.

Öh,jo, jag har provat att enligt ovanstående toppenfina tips lägga in datumen i db'n i detta format 2001-04-01
2001-04-02 o.s.v.

Åsså för att hämta:

$row = mysql_query("SELECT PLACE, INFO, DATE_FORMAT(DATE, '%W %c/%e')AS DATE FROM EVENEMANG ORDER BY DATE ASC");

Det trivsamma med det är ju att att det står typ Monday 2/4 Tuesday 3/4 etc i tabellen sen.
Men det blir ändå knas för datumen kommer huller om buller nu med... :q

Hur gör man alltså ??

MVH / fjarne :O)

Medlem sedan apr. 2000642 inlägg
#7

hmmm.. det som returneras av funktionen DATE_FORMAT blir väl en sträng, som sorteras som sådan?

kan man inte göra som så att du selectar kolumnen 2 ggr, en formaterad gång och en oformaterad.. och du sorterar sedan på den oformaterade?

------------------
PeterSign v 2.3.36

Medlem sedan feb. 200128 inlägg
#8

Tackar ödmukast för tipset :) !
Jag har testat lite med att selecta som du säger, tyvärr så blir resultatet (än så länge) antingen formaterat & huller om buller eller oformaterat men i prima nummer ordning.
De´ bara å snorpa vidare ...

MVH / fjarne :O)

Medlem sedan apr. 2000642 inlägg
#9

kolumnen måste få olika alias-namn-saker.

DATE_FORMAT(DATE, '%W %c/%e') AS datum_formaterad, DATE AS datum_oformaterad

sen kan du sortera på datum_oformaterad, men visa datum_formaterad på din sida. de måste som sagt ha olika namn :)

------------------
PeterSign v 2.3.36

Medlem sedan feb. 200128 inlägg
#10

Jaaa... Tack så mycket !

Möjligen är detta av intresse för nån annan villrådig nybörjare...

Så här gjorde jag & det tycks funka fint:

//öhh...Jag tror att detta är alias namn saken...

$DATE = $row["FORMATTED_DATE"];

//själva hämtet dårå...
$rs = mysql_query("SELECT PLACE, INFO, DATE_FORMAT(DATE, '%W %e/%c') AS FORMATTED_DATE FROM NEW_GIGS ORDER BY DATE ASC");

Använd $FORMATTED_DATE för att printa ut datumet. Enligt ovastående så blir då t.ex. 2001-04-01
visat som Sunday1/4.

MVH / fjarne :O)

141 ms totalt · 3 externa anrop · v20260731065814-full.55e59744
0 ms — hämta forumlista (cache)
0 ms — hämta statistik (cache)
138 ms — hämta tråd, inlägg och bilagor (db)