Avatar billede l_otto Nybegynder
28. november 2006 - 21:46 Der er 16 kommentarer og
3 løsninger

vende dato så den står rigtigt

er der et godt script til at vende datoen til dansk

den viser 11/28/2006 9:23:48 PM

Response.write  rs1("DateKolonne")
Avatar billede cpufan Juniormester
28. november 2006 - 21:51 #1
ja

skriv

<%session.lcid = 1030%> i toppen af din side.
Avatar billede l_otto Nybegynder
28. november 2006 - 21:58 #2
Error Type:
Session object, ASP 0219 (0x80004005)
The specified LCID is not available.
/default.asp, line 20
Avatar billede cpufan Juniormester
28. november 2006 - 23:21 #3
det skal den sgu være
Avatar billede l_otto Nybegynder
29. november 2006 - 08:49 #4
ok men det siger den altså til mig :-)
Avatar billede ffsoft Praktikant
29. november 2006 - 08:54 #5
Function RetDato(Dato As Date) As String
Dim Y, M, D

Y = Mid(Dato, 7, 4)
M = Mid(Dato, 4, 2)
D = Mid(Dato, 1, 2)

RetDato= D & "-" & M & "-" & Y

end function

Det er ikke alle udbydere der understøtter LCID, ved jeg af bitter
erfaring. Men funktionen skulle kunne klare det.
Avatar billede l_otto Nybegynder
29. november 2006 - 09:03 #6
uhha hvordan sætter jeg den ind ?

DateKolonne
Avatar billede mbagge Nybegynder
29. november 2006 - 09:28 #7
Du kan nogle gange opleve at fx d 7 ikke vises som 07 men som 7, og at mid(dato,x) derfor fejler.

Jeg ville istedet gøre dette:

function RetDato(daten)
y = year(daten)
m = right("0"&month(daten),2)
d = right("0"&day(daten),2)

RetDato = d & "-" & m & "-" & y
end function

Funktionen kalder du så med response.write RetDato(rs1("DateKolonne"))
Avatar billede l_otto Nybegynder
29. november 2006 - 09:34 #8
skide godt mbaage, men nu viser den ikke tiden ? kan vi få den med uden PM til sidst :-)?
Avatar billede mbagge Nybegynder
29. november 2006 - 09:55 #9
Jamen selvfølgelig...

eftyer y=, m= og d= tilføjer du:

h = hour(daten)
min = minute(daten)
s = second(daten)

og ændre RetDAto = xxxx til
RetDato = d & "-" & m & "-" & y & " " & h & ":" & min & ":" & s

Det skulle være det hele :)
Avatar billede mbagge Nybegynder
29. november 2006 - 10:00 #10
Hov du bør egentlig også tilføje lidt kode, så 2 bliver til 02 osv.
Det gør du sådan: h = right("0"&hour(daten),2) og tilsvarende på min og sek

/Bagge
Avatar billede l_otto Nybegynder
29. november 2006 - 10:02 #11
uha er du en ven at skrive den helt færdig for mig.. :-) tak
Avatar billede tdh1309 Juniormester
23. december 2006 - 16:42 #12
' ***************************************************************************************************************
' *** Function    dateFromAsp (dateInput, byref strOutput, strOutputFormat)                                  ***
' *** Description  Converts dateformat from strInputDate to strOutputDate                                    ***
' *** Argument    dateInput      - asp date (mm/dd/yyyy)                                                    ***
' ***              strOutputDate  - output variable of formattes date                                        ***
' ***              strOutputFormat - eg. dd/mm/yyyy                                                          ***
' *** Returns      True    if convertaion is done                                                            ***
' ***              False  if convertation failed                                                            ***
' ***              session("strErr")                                                                          ***
' ***              session("functionErr")                                                                    ***
' ***************************************************************************************************************
Function dateFromAsp (dateInput, byref strOutput, strOutputFormat)
  If trim(dateInput) = "" Then
    dateInput = date
  End If
  Dim locErr, strDel, strTmpDate, strTmpYYYY, strTmpDD, strTmpMM
  locErr = False            ' Function error flag
  strDel = ""                ' String delimiter in strInputDate
 
  ' Validate arguments
  If strInputDate  = "" Then
    session("functionErr") = session("functionErr") & "Function dateFromAsp called by EMPTY strInputDate<br>"
    locErr = True
  End If
  If strOutputFormat = "" Then
    session("functionErr") = session("functionErr") & "Function dateFromAsp called without specified var: strOutputFormat<br>"
    locErr = True
  End If
  strOutputFormat = lcase(strOutputFormat)
 
  ' Determine delimiter in strInputDate
  If ucase(mid(strOutputFormat,3,1)) = "Y" Then
    strDel = ucase(mid(strOutputFormat,5,1))
  Else
    strDel = ucase(mid(strOutputFormat,3,1))
  End if
 
  ' Extract dates
 
  strTmpYYYY = DatePart("yyyy",dateInput)
   
  strTmpDD  = DatePart("d",dateInput)
  If len(strTmpDD) <2 Then strTmpDD = "0" & strTmpDD
 
  strTmpMM  = DatePart("m",dateInput)
  If len(strTmpMM) <2 Then strTmpMM = "0" & strTmpMM
 
  strTIME    = CStr(FormatDateTime(dateInput,4)) 
 
  ' Construct date
  strOutputFormat = replace(strOutputFormat, "yyyy", strTmpYYYY)
  strOutputFormat = replace(strOutputFormat, "dd", strTmpDD)
  strOutputFormat = replace(strOutputFormat, "mm", strTmpMM) 
  strOutputFormat = replace(strOutputFormat, "time", strTIME)   
  strOutput = strOutputFormat
 
End Function

' ***************************************************************************************************************
' *** Function    dateToASP  (dateInput, byref strOutput, strInputFormat)                                  ***
' *** Description  Converts dateformat from strInputDate to strOutputDate                                    ***
' *** Argument    dateInput      - asp date (mm/dd/yyyy)                                                    ***
' ***              strOutputDate  - output variable of formattes date                                        ***
' ***              strInputFormat - eg. dd/mm/yyyy                                                          ***
' *** Returns      True    if convertaion is done                                                            ***
' ***              False  if convertation failed                                                            ***
' ***              session("strErr")                                                                          ***
' ***              session("functionErr")                                                                    ***
' ***************************************************************************************************************
Function dateToASP (dateInput, byref strOutput, strInputFormat)
  Dim locErr, strDel, strTmpDate, strTmpYYYY, strTmpDD, strTmpMM
  locErr = False            ' Function error flag
  strDel = ""                ' String delimiter in strInputDate
  dateInput = CStr(dateInput) 
   
  If InStr(lcase(strInputFormat), "time") > 0 Then
    strAspFormat = "mm/dd/yyyy time"
  Else
    strAspFormat = "mm/dd/yyyy"
  End If 
 
  ' Validate arguments
  If strInputDate  = "" Then
    session("functionErr") = session("functionErr") & "Function dateToASP called by EMPTY strInputDate<br>"
    locErr = True
  End If
  If strInputFormat = "" Then
    session("functionErr") = session("functionErr") & "Function dateToASP called without specified var: strInputFormat<br>"
    locErr = True
  End If
  strInputFormat = lcase(strInputFormat) 
 
  ' Determine delimiter in strInputDate
  If ucase(mid(strInputFormat,3,1)) = "Y" Then
    strDel = ucase(mid(strInputFormat,5,1))
  Else
    strDel = ucase(mid(strInputFormat,3,1))
  End if
  ' Extract dates
  posYYYY = InStr(strInputFormat,"yyyy")
  posDD  = InStr(strInputFormat,"dd")
  posMM  = InStr(strInputFormat,"mm")
  posTIME = InStr(strInputFormat,"time")
     
  If posYYYY > 0 Then
    strTmpYYYY = cint(Mid(dateInput,posYYYY,4))   
  End If
 
  intLength = 0
  If posDD > 0 Then
    If IsNumeric(Mid(dateInput,posDD,2)) Then
      intLength = 2
    Else
      intLength = 1 
    End If       
    strTmpDD  = cint(Mid(dateInput,posDD,intLength)) 
  End If
   
  If posMM > 0 Then
    If IsNumeric(Mid(dateInput,posMM,2)) Then
      intLength = 2
    Else
      intLength = 1 
    End If
    strTmpMM  = cint(Mid(dateInput,posMM,intLength))
  End If
 
  If posTIME > 0 Then
    strTIME    = cstr(Mid(dateInput,posTIME,5))
  End If 
     
  strAspFormat = replace(strAspFormat, "yyyy", strTmpYYYY)
  strAspFormat = replace(strAspFormat, "dd", strTmpDD)
  strAspFormat = replace(strAspFormat, "mm", strTmpMM)
  strAspFormat = replace(strAspFormat, "time", strTIME)       
  strOutput    = strAspFormat 
End Function
Avatar billede mbagge Nybegynder
24. december 2006 - 00:22 #13
Hov, havde ikke lige set dit spørgsmål om at skrive koden færdig....

Ovenstående funktioner ser umiddelbart ud til at klare det, men vil du have en lidt kortere udgave, i stil med det jeg har skrevet før, kan du gøre sådan:

function RetDato(daten)
y = year(daten)
m = right("0"&month(daten),2)
d = right("0"&day(daten),2)
h = right("0"&hour(daten),2)
mi = right("0"&minute(daten),2)
s = right("0"&second(daten),2)

RetDato = d & "-" & m & "-" & y & " " & h & ":" & mi & ":" & s
end function

Du kan evt udelade linien med 's = right......' og ' & s' i sidst linie af funktione, hvis du ikke vil have sekunder med.

/Bagge
Avatar billede tdh1309 Juniormester
24. december 2006 - 12:54 #14
Rart at se nogle er kvikkere end mig :-) (Bagge)
Avatar billede l_otto Nybegynder
27. december 2006 - 10:24 #15
jeg fik den selv skrev om med den virker for vildt tak
Avatar billede l_otto Nybegynder
28. december 2006 - 13:05 #16
men hvordan for jeg den til at virke her ?

response.write "<tr><td>" & Rs.fields("DateKolonne") & "</td>"
Avatar billede mbagge Nybegynder
28. december 2006 - 13:29 #17
sådan her:

response.write "<tr><td>" & RetDato(Rs.fields("DateKolonne")) & "</td>"

så længe din funktion altså hedder RetDato selvfølgelig :)

/Bagge
Avatar billede l_otto Nybegynder
28. december 2006 - 13:57 #18
ja men den vil ikke

Error Type:
Sun ONE ASP VBScript runtime (0x800A000D)
Type mismatch
/klubadmin/View_Enquiry.asp, line 47

response.write "<tr><td>" & RetDato(Rs.fields("DateKolonne")) & "</td>"
Avatar billede l_otto Nybegynder
28. december 2006 - 13:58 #19
sorry det er mig der er stiv den virker nu tak .-)
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