Så bliver datoen skrevet på US mode.. Jeg har i toppen af mit asp script skrevet koden <% Session.LCID = 1030 %> og i feltet Spilledato i DB'en er det sat til Kort datoformat med "DD/MM/YYYY" i inputmaske.
Men uanset hvad jeg gør.. så vil den ikke skrive det på dansk.
Hvis jeg sætter feltet i DB'en som et TEXT felt, så virker det 100%, men så er der bare store problemer med sorteringen :(
Denne her gang tester jeg det lige, inden jeg lukker spørgsmålet.
min erfaring med datoer er at altid - altid - indsætte dem i databasen i formatet yyyymmdd Derved slipper man for det fnidder der kan være med at den bytter om på mm og dd Når du så engang skal vise din dato så kan du altid klippe i den og få den til at vise den i dd/mm/yyyy hvis det er sådan den skal se ud
Når jeg kører koden som du har lavet den "function" så skriver den, at der er en syntaks fejl. Som jeg ikke lige kan se logikken i..... :) Jeg kan, hvis du har lyst, også maile dig hele koden til scriptet!!
Har gjort som der stod, og fjernet det '-tegn.. det skriver fint til db'en.. men stadigvæk vender den det forkert.. Må sq indrømme.. at jeg snart opgiver den skide kode *GG*
måske kan du bruge dette her - det sætter ihverfald dato ind korrekt og når du henter der det mage til, i mit tilfælde er dato som 15-05-2006 og det kommer ud ligesådan her er min kode:
Do While Not objRecordset.EOF select case weekday(objrecordset("Spilledato")) case 1 dage ="Søndag" case 2 dage ="Mandag" case 3 dage ="Tirsdag" case 4 dage ="Onsdag" case 5 dage ="Torsdag" case 6 dage ="Fredag" case 7 dage ="Lørdag"
end select
j=j+1
if(j mod 2)=0 then
Response.Write "<tr bgColor=#F8F8FF>" else Response.Write "<tr bgColor=#E8E8E8>" End if
if objrecordset("spilledato")<date() then
Set Conn = Server.CreateObject("ADODB.Connection") DSN = "DRIVER={Microsoft Access Driver (*.mdb)}; " DSN = DSN & "DBQ=" & Server.MapPath ("database.mdb") Conn.Open DSN Conn.Execute("DELETE * FROM kalender WHERE spilledato<date()") Conn.Close Set Conn = Nothing
Do While Not objRecordset.EOF select case weekday(objrecordset("Spilledato")) case 1 dage ="Søndag" case 2 dage ="Mandag" case 3 dage ="Tirsdag" case 4 dage ="Onsdag" case 5 dage ="Torsdag" case 6 dage ="Fredag" case 7 dage ="Lørdag"
end select
j=j+1
if(j mod 2)=0 then
Response.Write "<tr bgColor=#F8F8FF>" else Response.Write "<tr bgColor=#E8E8E8>" End if
if objrecordset("spilledato")<date() then
Set Conn = Server.CreateObject("ADODB.Connection") DSN = "DRIVER={Microsoft Access Driver (*.mdb)}; " DSN = DSN & "DBQ=" & Server.MapPath ("database.mdb") Conn.Open DSN Conn.Execute("DELETE * FROM kalender WHERE spilledato<date()") Conn.Close Set Conn = Nothing
Med den kode som du lige gav, så virker det stadivæk ikke. Og nu udsrkvier den heller ikke den dato, men propper i den. Det er jo til at blive sindsyg af det her *G* !!
'--Åbne recordset set oRS = objConn.Execute("SELECT ID, Person, Spillested, Spilledag, Spilletid, Spilledato, Beskrivelse FROM kalender where Person='Booking' order by Spilledato")
'--Udskriv poster
Tabel oRS
oRS.Close Set oRS = Nothing objConn.Close Set objConn = Nothing
' ----------- EN I ALT TÆLLER ----------------------- Dim Connect, connString Set Connect = Server.CreateObject("ADODB.Connection") connString = "Driver={Microsoft Access Driver (*.mdb)};DBQ=" & Server.MapPath("database.mdb") Connect.Open connString
QueryTotal = "Select count(*) as Found from kalender where person='booking' and spilledato>date();" Set rsTotal = connect.Execute(QueryTotal)
Ialt = rsTotal("Found") response.write "Der er i alt <b>" & Ialt & "</b> Spillejobs i år"
' ----------- EN I ALT TÆLLER SLUT-----------------------
response.write "<br><br>"
' ----------- EN I ALT TÆLLER -----------------------
'--Åbne recordset set oRS = objConn.Execute("SELECT ID, Person, Spillested, Spilledag, Spilletid, Spilledato, Beskrivelse FROM kalender where Person<>'Booking' order by spilledato")
'--Udskriv poster
Tabel oRS
oRS.Close Set oRS = Nothing objConn.Close Set objConn = Nothing
Der var en fejl i min funktion.. jeg skrev "dansk_dato =" i stedet for "lav_til_dansk_dato =". Her er rettede funktion, som tilføjer "0", hvis værdien (dag eller måned) er under 10:
function lav_til_dansk_dato(datostreng) dag = day(datostreng) if dag < 10 then dag = "0" & dag
maaned = month(datostreng) if maaned < 10 then maaned = "0" & maaned
aar = year(datostreng)
lav_til_dansk_dato = dag & "/" & maaned & "/" & aar end function
Den skriver nu f.eks. 28/06/2006, ved brug af f.eks.:
Har valgt at lukke spørgsmålet.. Kan ikke finde en løsning.. :(.. så har lavet det på en lidt anden måde
Synes godt om
Ny brugerNybegynder
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.