webForumDet fria alternativet
Logga in / Bli medlem

Datumformat

ASP

10 svar · 324 visningar · startad av qwerty

Medlem sedan jan. 2001391 inlägg
Trådstart#1

Har ett fält där man får fylla i datum när man vill att ens annons ska tas bort.

Hur kan jag kolla så att man fyllt i datumet på rätt sätt. Jag vill styra dem till att skriva åååå-mm-dd. Jag har sett att många gör tre fält, ett för år, osv.

Med det jag skulle vilja är att om man exempelvis skriver 1/7 -01 så ska man när man submittar formen få ett mess som säger: Du har angett ett felaktigt datumformat. tebaks och försök igen.

[r]stavfel[/r]

Medlem sedan dec. 19995 874 inlägg
#2

går att göra bättre, men du får en humm i alla fall :)

<%
datum = "1999-05-21"
z1 = split(datum, "-")
If Ubound(z1) < 2 Then 
	f = True
Else
	If len(z1(0)) = 4 AND IsNumeric(z1(0)) Then
		If len(z1(1)) = 2 AND IsNumeric(z1(1)) Then
			If len(z1(2)) = 2 AND IsNumeric(z1(2)) Then
			else
				f = True
			End Id
		else
			f = True
		End If
	else
		f = True
	End If
End If
%>
Medlem sedan dec. 19995 874 inlägg
#3

Om f = TRUE måste du avbryta all aktivitet annars kommer inte det inte att fungera mot slutet...

kanske borde skriva om det lite :e

Medlem sedan jan. 2001391 inlägg
#4

vad skulle hända om datum="femtonde mars 2001", alltså utan - som avskiljare.

Medlem sedan dec. 19995 874 inlägg
#5

If Ubound(z1) < 2 Then

Medlem sedan jan. 2001391 inlägg
#6

Hur gör man för att avbryta all aktivitet då?

Medlem sedan jan. 2001391 inlägg
#7

Det vore kanon om Brimba eller någon annan kunde förklara vad som menas med detta:

Om f = TRUE måste du avbryta all aktivitet annars kommer inte det inte att fungera mot slutet...

...för jag begriper inte riktigt.

Medlem sedan dec. 19995 874 inlägg
#8

Det du kan göra för att lösa det riktigt enkelt är att byta ut f = true till response.redirect "fail.asp?id=1"

fail.asp kan ju sedan se ut något sådant här...

<%
Select Case trim(Request.QueryString("id"))
	Case "1"
		rubtext = "Det saknas -"
		texten  = "I det datum du skrev in saknas -. Tänk på att det skall matas in enligt aaaa-mm-dd."
	Case "2"
		rubtext = "Inte enbart siffror..."
		texten = "Du matade inte in enbart siffror... passa dig!"
	Case else
		rubtext = "Något oväntat (lol) fel har uppstått."
		texten = "Humma humma"
End Select
%>
Medlem sedan jan. 2001391 inlägg
#9

Tack, tack!

Den funkar nu i stort sett. Det som inte funkar är om man skriver 2001-13-13, dvs ett datum i rätt format som inte finns.

Medlem sedan juni 200032 967 inlägg
#10

det kan du kolla med isdate().

Medlem sedan jan. 2001391 inlägg
#11

skulle inte:

if isdate(datum) = FALSE then
response.write("du gjorde fel, pucko")
else
'sidan
end if

kunna ersätta hela funktionen här ovan. i alla fall får jag felmeddelandet från isdate vad jag än gör för fel i datumfältet.

259 ms totalt · 4 externa anrop · v20260731065814-full.51f67c91
123 ms — deklarationer (db)
0 ms — hämta statistik (cache)
132 ms — hämta tråd, inlägg och bilagor (db)
124 ms — ändringar (db)