Avatar billede hundevennen Nybegynder
14. marts 2008 - 11:02 Der er 8 kommentarer og
1 løsning

datoformaterings problemer

Jeg bruger date i et inputfelt og den er sådan her dd.mm.yyyy
men da det skal ind i en sqlbase og jeg gerne vil kunne sortere på både dato og tiden skal jeg ha tid med, så noget med formatdatetime så det kommer til at se nogenlunde sådan her ud
2008-03-12 12:00:00
Avatar billede fennec Nybegynder
14. marts 2008 - 11:12 #1
1. Skal du ikke have en session.LCID=1030 ind så datoer bliver vist som "dd-mm-yyyy"?
2. Brug denne kode (tager dog ikke sek med):

Function ConvertToSqlDatetime(dato)
    dim SQLYear,SQLMonth,SQLDay,SQLHour,SQLMinute
    SQLYear = Year(dato)
    SQLMonth = Month(dato)
    SQLDay = Day(dato)
    SQLHour = Hour(dato)
    SQLMinute = minute(dato)
    SQLDay = right("0"&SQLDay, 2)
    SQLMonth = right("0"&SQLMonth, 2)
    SQLHour = right("0"&SQLHour, 2)
    SQLMinute = right("0"&SQLMinute, 2)
    ConvertToSqlDatetime = SQLYear&"-"&SQLMonth&"-"&SQLDay&" "&SQLHour&":"&SQLMinute
End Function
Avatar billede hundevennen Nybegynder
14. marts 2008 - 11:22 #2
jo det skal være dansk datoformat
2. der kan godt være flere brugere på samtidig og de kan også opdatere samtidig, så derfor vil det være lækkert hvis der var sekunder med?
Avatar billede hundevennen Nybegynder
14. marts 2008 - 11:24 #3
men ok egentlig er det ligegyldig hvilken tekst der kommer først i rækken når jeg skal lave et udtræk sortere på dato og tid, hvis der er flere på samme tidspunkt
Avatar billede fennec Nybegynder
14. marts 2008 - 11:26 #4
Er det en now() værdi du skal have ind?

For så er det nemmere bare at bruge databasens indbyggede funktion:
Access/MySQL:
insert into tabel(datokol) values(now())

MS-SQL:
insert into tabel(datokol) values(getDate())
Avatar billede hundevennen Nybegynder
14. marts 2008 - 11:27 #5
her er en del af opdateringsformen, - hvordan får jeg så lige sqldatotime ind istedet for date

<form name=sampleform action="Opretmelding.asp" method=post>
           
<table>
<tr>
<h4>OPRET MELDING</h4>
</tr>
<tr>
<td>
  <b>Fradato</b>:
  </td>
  <td><p class="celletekst"><input type="text" name="datof" size="9" style="font-size: 10 pt; font-family: Arial" value="<%=(date)%>"></p>
</td>
</tr>
<tr>
<td>
  <b>Fradato</b>:
  </td>
  <td><p class="celletekst"><input type="text" name="datot" size="9" style="font-size: 10 pt; font-family: Arial" value="<%=(date)+1%>"></p>
</td>
Avatar billede fennec Nybegynder
14. marts 2008 - 11:32 #6
<table>
<tr>
<h4>OPRET MELDING</h4>
</tr>
<tr>
<td>
  <b>Fradato</b>:
  </td>
  <td><p class="celletekst"><input type="text" name="datof" size="9" style="font-size: 10 pt; font-family: Arial" value="<%=(now)%>"></p>
</td>
</tr>
<tr>
<td>
  <b>Tildato</b>:
  </td>
  <td><p class="celletekst"><input type="text" name="datot" size="9" style="font-size: 10 pt; font-family: Arial" value="<%=(now)+1%>"></p>
</td>


sql = "insert into dinTabel(...,datof,datot) values(...,'"& ConvertToSqlDatetime(request.form("datof")) &"','"& ConvertToSqlDatetime(request.form("datot")) &"')"

Function ConvertToSqlDatetime(dato)
    dim SQLYear,SQLMonth,SQLDay,SQLHour,SQLMinute, SQLSec
    SQLYear = Year(dato)
    SQLMonth = Month(dato)
    SQLDay = Day(dato)
    SQLHour = Hour(dato)
    SQLMinute = minute(dato)
    SQLSec = Second(dato)
    SQLDay = right("0"&SQLDay, 2)
    SQLMonth = right("0"&SQLMonth, 2)
    SQLHour = right("0"&SQLHour, 2)
    SQLMinute = right("0"&SQLMinute, 2)
    SQLSec = right("0"&SQLSec, 2)
    ConvertToSqlDatetime = SQLYear&"-"&SQLMonth&"-"&SQLDay&" "&SQLHour&":"&SQLMinute&":"&SQLSec
End Function
Avatar billede hundevennen Nybegynder
17. marts 2008 - 13:48 #7
selvfølgelig virker det når det er fra dig - tak for hjælpen - har lige smidt et spm op
Avatar billede hundevennen Nybegynder
17. marts 2008 - 13:48 #8
læg et svar
Avatar billede fennec Nybegynder
17. marts 2008 - 14:52 #9
.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