Toon posts:

[ASP] rekenen met datum

Pagina: 1
Acties:

Verwijderd

Topicstarter
Goedemorgen ik heb een vraagje,
Ik ben de agenda functie van een website aan het aanpassen.
Hiermee worden berekeningen met een datum gedaan.

De code is alsvolgt:

code:
1
2
3
4
5
6
7
8
9
10
11
<%
dim datum

if request.querystring("datum") = "" then
    datum = date
else
    datum = request.querystring("datum")
end if

start=datum - day + 1
%>


Als ik nu de pagina standaard aanroep dus gewoon agenda.asp dan
werkt het. dan kiest hij datum = date. Maar als kies ik nu:

agenda.asp?datum=03/15/2004

dan werkt het niet meer.
Ik krijg dan de volgende foutcode:

code:
1
2
3
Microsoft VBScript runtime error '800a000d' 

Type mismatch: '[string: "03/15/2004"]'


Ik heb al op tweakers gezocht en het script verschillende keren aangepast maar ik kom er niet uit.

Iemand een idee?

  • mulder
  • Registratie: Augustus 2001
  • Laatst online: 26-05 23:39

mulder

ik spuug op het trottoir

CDate en DateDiff

oogjes open, snaveltjes dicht


Verwijderd

Topicstarter
CDate en DateDiff
Kun je me iets meer uitleg geven?

  • stp_4
  • Registratie: Maart 2003
  • Laatst online: 22-05 12:07
Hij krijgt de datum in string vorm. Hiermee kun je niet rekenen, dus niet "03/15/2004" - day + 1

stp - PSN ID: stp_4


  • mulder
  • Registratie: Augustus 2001
  • Laatst online: 26-05 23:39

mulder

ik spuug op het trottoir

oogjes open, snaveltjes dicht


Verwijderd

Topicstarter
Oke ik heb het al met CDate() werkt het wel.

Bedankt voor de snelle reacties!

Verwijderd

Nog eventjes op terugkomend: je haalt nu je info uit de Querystring. Dat is een onveilige methode zolang je daar geen controle overheen gooit. Sowieso zijn parametrized queries veiliger, aangezien je SQL injection dan onmogelijk maakt... lees ajb P&W FAQ - SQL en huiver, anders loop je de kans dat een of andere grappenmaker allemaal vervelende dingen met je server/data kan uithalen

  • faabman
  • Registratie: Januari 2001
  • Laatst online: 08-08-2024
ja, en kijk dan ook gelijk even naar de functie IsDate()...

wat ik zelf altijd doe

ASP:
1
2
3
4
5
6
7
8
9
10
11
dim strdatum
  strdatum = maak_datum("datum")

Function maak_datum(waarde)
    dim tmp
    tmp = Request(waarde)
    
    If IsDate(tmp) = False Then tmp = Date()
    
    maak_datum = CDate(tmp)
End Function

Op zoek naar een baan als Coldfusion webdeveloper? Mail me!

Pagina: 1