Avatar billede html_wizard Nybegynder
04. marts 2004 - 12:14 Der er 9 kommentarer og
1 løsning

ASP dato entry

Jeg skal lave en online aktivitetskalender

Beskrivelse

Burgeren indtaster en kort artikel
Brugeren indtaster dato

Mit problem er at den skal liste datoen i rækkefølge fra databasen.

Så hvis en bruger indtaster 12-08-04 og en indtaster 120504 og en 12. marts 2004, så har jeg et problem hvordan løser jeg det bedste muligt.
Avatar billede fennec Nybegynder
04. marts 2004 - 12:27 #1
du skal selvfølgelig gemme datoen som datetime type i databasen.

Også vil jeg anbefale at man kun bruger et format til indtastning, ellers skal du til at lave forskellige konverterings rutiner, og det bliver svært (faktisk umuligt) at bestemme hvilken du så skal bruge på brugerens dato.

f.eks. 01-01-02  kan være ÅÅ-MM-DD, DD-MM-ÅÅ, ÅÅ-DD-MM.....

ved at skrive DD-MM-ÅÅ efter indtastningsfeltet, vil de fleste bruge det rigtige format.
Avatar billede nute Nybegynder
04. marts 2004 - 12:52 #2
den sikreste løsning, er at lave nogle drop-down lister som brugeren kan vælge fra:

<select id="dag">
<%
for i = 1 to 31
    selected = ""
    if( i = Day( Date() ) ) Then
        selected = " selected=""selected"""
    end if
    Response.Write( "<option value=""" & i & """" & selected & ">" & i & "</option>" )
next
%>
</select>
<select id="maaned">
<%
for i = 1 to 12
    selected = ""
    if( i = Month( Date() ) ) Then
        selected = " selected=""selected"""
    end if
    Response.Write( "<option value=""" & i & """" & selected & ">" & i & "</option>" )
next
%>
</select>
<select id="aar">
<%
for i = 1950 to Year( Date() )
    selected = ""
    if( i = Year( Date() ) ) Then
        selected = " selected=""selected"""
    end if
    Response.Write( "<option value=""" & i & """" & selected & ">" & i & "</option>" )
next
%>
</select>

Dette kombineret med et javascript der tager højde for om man fx kan angive dag 31 i februar måned, vil være en "idiotsikker" løsning

/nute
Avatar billede html_wizard Nybegynder
04. marts 2004 - 18:15 #3
Nute

Vil det sige når jeg gemmer date i databasen og feltet er sat til datotype så kan jeg bede den om order by date?
Avatar billede nute Nybegynder
04. marts 2004 - 18:22 #4
du er nødt til at samle ind disse data, inden du kan smide dem ned i en database, fx:

Dim strDato : strDato = Request("dag") & "-" & Request("maaned") & "-" & Request("aar")

Du definerer selv formatet inden du smider det ned til din base.

Og ja ... når du så skal trække data ud igen, så kan du lave "order by [ditDatoFelt]"

/nute
Avatar billede cpufan Juniormester
04. marts 2004 - 21:34 #5
det bedste er jo sådan set at lade siden smide den aktuelle dato ind i db'en, så undgåes fejlindtastninger.
Avatar billede cpufan Juniormester
04. marts 2004 - 21:35 #6
øh glem det, det kan jo være fremtidige datoer
Avatar billede html_wizard Nybegynder
04. marts 2004 - 23:47 #7
nute, det lyder rigtig godt kammerat.

Læg dit SVAR
Avatar billede nute Nybegynder
05. marts 2004 - 09:10 #8
ok ... men dette er ikke et 200 points spm. post et svar og snup minimum 3/4 af pointsene selv (helst 170 points til dig selv).

/nute
Avatar billede nute Nybegynder
05. marts 2004 - 09:45 #9
html_wizard >> smid et svar her:

http://www.eksperten.dk/spm/473399

jeg skrev jeg ikke ville have 200 points for dette spm !!

/nute
Avatar billede nute Nybegynder
05. marts 2004 - 11:26 #10
PS! hvis du ikke vil have dem tilbage, så overgiver jeg dem til admin ;o]
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