/ Forside / Teknologi / Udvikling / ASP / Nyhedsindlæg
Login
Glemt dit kodeord?
Brugernavn

Kodeord


Reklame
Top 10 brugere
ASP
#NavnPoint
smorch 9259
Harlekin 1866
molokyle 1040
Steffanst.. 758
gandalf 657
smilly 564
gibson 560
cumano 530
MouseKeep.. 480
10  Random 410
Amerikansk tid og dato
Fra : René Poulsen


Dato : 29-02-04 14:14

Jello!

Jeg er stødt ind i et underligt problem i et forum jeg har lavet.
Hvert indlæg har en dato for hvornår det er blevet oprettet og
den står på Amerikansk, f.eks.: "2/14/2004 17:33:09 PM".

På et tidspunkt igår skrev den det på dansk og jeg troede derfor
jeg havde fået det til at virke (vha. Session.LCID = 1030).

Men nu virker det så ikke længere. Hvordan kan det være?
Min asp kode ser sådan her ud:

- Set Conn = Server.CreateObject("ADODB.Connection")
- DSN = "DRIVER={Microsoft Access Driver (*.mdb)}; "
- DSN = DSN & "DBQ=" & Server.MapPath("../db/forum_db.mdb")
- Conn.Open DSN

- Session.LCID = 1030

- If Request.Querystring("ID") = 0 Then
- strSQL = "Insert Into Tabel1 (ForumID, SvarTil, Forfatter,
Emne,
- Tekst, Dato) values('1', '" & Request.Querystring("ID") & "',
'" &
- session.Contents("Brugernavn") & "', '" & Request.Form("Emne")
- & "', '" & Replace(Request.Form("Indlaeg"),vbCrLf,"<br>") &
"', '" &
- Now & "')"
- Conn.Execute(strSQL)
- End If

Skal "Session.LCID" placeres et andet sted eller...?
Jeg tænkte på om det f.eks. skal bruges på den side hvor jeg
udskriver indlæggene?

På forhånd tak!

/René

--
Vil du lære at kode HTML, XHTML, CSS, SSI eller ASP?
- Pædagogiske tutorials på dansk
- Kom godt i gang med koderne
KLIK HER! => http://www.html.dk/tutorials

 
 
Jørn Andersen (01-03-2004)
Kommentar
Fra : Jørn Andersen


Dato : 01-03-04 03:17

On Sun, 29 Feb 2004 13:14:19 +0000 (UTC), René Poulsen
<fcpoulsen@hotmail.com> wrote:

>Jeg er stødt ind i et underligt problem i et forum jeg har lavet.
>Hvert indlæg har en dato for hvornår det er blevet oprettet og
>den står på Amerikansk, f.eks.: "2/14/2004 17:33:09 PM".
>
>På et tidspunkt igår skrev den det på dansk og jeg troede derfor
>jeg havde fået det til at virke (vha. Session.LCID = 1030).
<snip>
>- strSQL = "Insert Into Tabel1 (ForumID, SvarTil, Forfatter,
>Emne,
>- Tekst, Dato) values('1', '" & Request.Querystring("ID") & "',
>'" &
>- session.Contents("Brugernavn") & "', '" & Request.Form("Emne")
>- & "', '" & Replace(Request.Form("Indlaeg"),vbCrLf,"<br>") &
>"', '" &
>- Now & "')"

Der kan være flere ting (ud over Session.LCID)
Den sidste stump af SQL'en skal i stedet for:
, '" & Now & "')"
se sådan ud:
, Now())"

Det du gør er jo i virkeligheden at indsætte en *tekststreng*, som din
database så af uransagelige grunde fortolker på enten en rigtig eller
en forkert måde.
I mit forslag bruges databasens egen dato-funktion.
(Jeg har taget udgangspunkt i, at det er en Access-databse - hvis det
er en anden, må du lige slå op i databasens dokumentation.)

Dernæst kan man sige, at hvis feltet altid skal være
oprettelsestidspunktet, så er det lettere at sætte det som
default-værdi i databasen, og så lade være med at INSERT den.

Endelig ville jeg kigge på, hvilket sprog databasen er sat til at
benytte.

Hvis:
a) din database bruger dansk
b) dit script bruger dansk (Session.LCID = 1030)
c) du overfører ægte datoværdier i din SQL og ikke tekststrenge
- så bør det virke.

<snip>
>Skal "Session.LCID" placeres et andet sted eller...?

Normalt sætter man det i toppen af siden.

>Jeg tænkte på om det f.eks. skal bruges på den side hvor jeg
>udskriver indlæggene?

Normalt sætter man det i toppen af alle de sider, der anvender
dato/tid. Evt. kan man sætte det i global.asa - eller man kan have det
i en include-fil sammen med andre standard-indstillinger.

>På forhånd tak!

Good luck!

--
Jørn Andersen,
Brønshøj

Søg
Reklame
Statistik
Spørgsmål : 177501
Tips : 31968
Nyheder : 719565
Indlæg : 6408527
Brugere : 218887

Månedens bedste
Årets bedste
Sidste års bedste