Avatar billede starf Nybegynder
09. maj 2006 - 14:35 Der er 13 kommentarer og
1 løsning

omkring dato formatet

når jeg forsøger at sætte en dato ind med

rs("dato") = date()

så får jeg det ud i dette her format: 09-05-2006

men jeg vil gerne have det ud i dette her format: 05/09/2006

hvordan gør man det?
Avatar billede fennec Nybegynder
09. maj 2006 - 14:47 #1
Det format du får ud er bestemt af den session.LCID du kører med. Du er ovre i en engelsk udgave, så hvis du smider dette i toppen af din side er alle datoer og tal formateret efter engelsk format:
session.LCID = 1033

Hvis du ikke vil omformatere tal, skal du have lavet din egen converter, eller bruge den indbygget i MySQL, når du selecter.
Avatar billede fennec Nybegynder
09. maj 2006 - 14:50 #2
MySQL functionen er:
DATE_FORMAT(date,format)

Du kan læse mere om den på:
http://dev.mysql.com/doc/refman/5.0/en/date-and-time-functions.html
Avatar billede starf Nybegynder
09. maj 2006 - 15:00 #3
Hmm har smidt

"session.LCID = 1033" i toppen af min side, men dato formateret er det samme.
Avatar billede fennec Nybegynder
09. maj 2006 - 15:07 #4
Prøv lige at lave en:
response.write date()

Evt også sådan:
session.LCID = 1033
response.write date() &"<br>"
session.LCID = 1030
response.write date() &"<br>"
Avatar billede starf Nybegynder
09. maj 2006 - 15:16 #5
5/9/2006
5/9/2006
09-05-2006

ved:

response.write date()
session.LCID = 1033
response.write date() &"<br>"
session.LCID = 1030
response.write date() &"<br>"
Avatar billede fennec Nybegynder
09. maj 2006 - 15:52 #6
Så burde en response.write rs("dato") også udskrives efter LCID formatet...
Men ellers skal du have fat i DATE_FORMAT() funktionen, som nævnt tidligere:

select date_format(datoKolonne,'%m/%d/%Y') as dato from dinTabel
Avatar billede starf Nybegynder
09. maj 2006 - 15:58 #7
jeg har prøvet at sætte den session.LCID over alt, det sker bare ikke ?
selve formatet i db feltet er bare en varchar (lang historie) og vil gerne forsætte med at have den.


og hvordan skal jeg så sætte det date omforming ind i det her?

<% if mode = "submit" then %>
<%
session.LCID = 1033
SQL = "SELECT * FROM status_ordre"
set rs = Conn.execute(SQL)
Dim rs
Set rs = Server.CreateObject("ADODB.Recordset")
rs.Open SQL, Conn, 3, 3

rs.AddNew


rs("user") = session("name")
rs("dato") = date()

rs("ordrenr") = session("ordrenr")

if Request.Form("statusmsg") <> "" then
rs("msg") = Request.Form("statusmsg")
end if

rs("ip") = Request.ServerVariables("REMOTE_ADDR")
rs.Update
rs.Close
Set rs = Nothing
Conn.Close
set Conn = Nothing%>

Addet!!
<%session("ordrenr") = ""%>
Avatar billede starf Nybegynder
09. maj 2006 - 16:00 #8
for at gøre de tmere mystisk så har jeg et andet stykke kode der også sætter en dato ind, men her gør den det rigtigt

date_done = '" & date()
Avatar billede fennec Nybegynder
09. maj 2006 - 16:13 #9
Da det er en varchar (tekst), bliver den ikke påvirket af LCID'en, og du kan nok heller ikke anvende date_format funktionen.

Du skal altså have lavet din egen converter:

function dateFormat(fDate)
dim fDay, fmonth, fYear
  fDay = left(fDate,2)
  fmonth = mid(fDate,3,2)
  fYear = right(fDate,4)
  dateFormat = fmonth &"/"& fDay &"/"& fYear
end function
Avatar billede starf Nybegynder
10. maj 2006 - 08:32 #10
kalder man den med bare at skrive fDate ?
Avatar billede fennec Nybegynder
10. maj 2006 - 08:45 #11
Nope. Med dateFormat()

enDato = "10-05-2006"
response.write dateFormat(enDato)
Avatar billede starf Nybegynder
10. maj 2006 - 08:56 #12
rs("dato") = dateFormat(Date)

giver mig:

10/5//2006 lige et / for meget.. hmm
Avatar billede starf Nybegynder
10. maj 2006 - 08:57 #13
sårn nu virke det smid et svar og MANGE tak for hjælpen!
Avatar billede fennec Nybegynder
10. maj 2006 - 08:59 #14
.o) <-- One Eyed Jack
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Kurser inden for grundlæggende programmering

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester