Avatar billede dkkarpen Nybegynder
23. januar 2001 - 12:13 Der er 2 kommentarer og
1 løsning

God idé til validering

Halløj

Jeg søger en god idé til validering af denne rutine. Evt. med anvendelse af arrays. Felterne der skal valideres er:

- Ansvarlig
- Sagsbehandler
- ForelagtAf

Hvad siger du?

\'Bestem chefer via udtræk fra telefonbase
Set Conn = Server.CreateObject(\"ADODB.Connection\")
Set Conn2 = Server.CreateObject(\"ADODB.Connection\")
Conn.open \"plan\", \"kim\", \"none\"
Conn2.open \"telefon\", \"kim\", \"none\"

moedenummer = Request.Form(\"nummer\")
aargang = right(Request.Form(\"dato\"),4)
moedeplanid = Request.Form(\"moedeplanid\")

for i = 1 to Request.Form(\"antal\")

\'Udfyld med samme værdi hvis efterfølgende felter er tomme
if Request.form(\"Ansvarlig\" & i) <> \"\" then
Ansvarlig = Request.Form(\"Ansvarlig\" & i)
else
Ansvarlig = Ansvarlig
end if

if Request.Form(\"sagsbehandler\" & i) <> \"\" then
sagsbehandler = Request.Form(\"sagsbehandler\" & i)
else
sagsbehandler = sagsbehandler
end if

if Request.Form(\"forelagtaf\" & i) <> \"\" then
forelagtaf = Request.Form(\"forelagtaf\" & i)
else
forelagtaf = forelagtaf
end if

SQL2 = \"Select * from Brugere where ( initialer = \'\" & Ansvarlig & \"\')\"
SQL3 = \"select * from brugere where ( initialer = \'\" & sagsbehandler & \"\')\"
SQL4 = \"select * from brugere where ( initialer = \'\" & forelagtaf & \"\')\"

Set rs2 = Conn2.execute (SQL2)
If Not (rs2.BOF Or rs2.EOF) Then
Set rs3 = Conn2.execute (SQL3)
If Not (rs3.BOF Or rs3.EOF) Then
Set rs4 = Conn2.execute (SQL4)
If Not (rs4.BOF Or rs4.EOF) Then

Ansvarlig_stilling = rs2(\"stilling\")
AnsvarligF = rs2(\"fornavn\") & \" \" & rs2(\"efternavn\")
kontor = left(rs2(\"afdeling\"),2)
form = Request.Form(\"form\" & i)
sagsbehandlerF = rs3(\"fornavn\") & \" \" & rs3(\"efternavn\")
forelagtafF = rs4(\"fornavn\") & \" \" & rs4(\"efternavn\")

laegelig = Request.Form(\"laegelig\" & i)
if laegelig = \"yes\" then laegelig = 0 else laegelig = 1 end if

journalnr = Request.Form(\"journalnr\" & i)
notat = Request.Form(\"notat\" & i)

\'Udfyld med samme værdi hvis efterfølgende felter er tomme
if Request.Form(\"Ansvarlig\" & i) <> \"\" then
Ansvarlig_init = Request.Form(\"Ansvarlig\" & i)
else
Ansvarlig_init = Ansvarlig_init
end if
if Request.Form(\"sagsbehandler\" & i) <> \"\" then
sagsbehandler_init = Request.Form(\"sagsbehandler\" & i)
else
sagsbehandler_init = sagsbehandler_init
end if
if Request.Form(\"forelagtaf\" & i) <> \"\" then
forelagtaf_init = Request.Form(\"forelagtaf\" & i)
else
forelagtaf_init = forelagtaf_init
end if

opretter = mid(Request.ServerVariables(\"AUTH_USER\"),8,3)
SQ = \"SQ\" & i

SQ = \"Insert into ankeref ( moedenummer, aargang, Ansvarlig, Ansvarlig_init, form, laegelig, journalnr, Ansvarlig_stilling, kontor, opretter, sagsbehandler, sagsbehandler_init, forelagtaf, forelagtaf_init, notat ) values ( \'\"&moedenummer&\"\', \'\"&aargang&\"\', \'\"&AnsvarligF&\"\', \'\"&Ansvarlig_init&\"\', \'\"&form&\"\', \'\"&laegelig&\"\', \'\"&journalnr&\"\', \'\"&Ansvarlig_stilling&\"\', \'\"&kontor&\"\', \'\"&opretter&\"\', \'\"&sagsbehandlerF&\"\', \'\"&sagsbehandler_init&\"\', \'\"&forelagtafF&\"\', \'\"&forelagtaf_init&\"\', \'\"&notat&\"\' )\"
if journalnr <> \"\" then
Conn.Execute SQ
end if
\'Response.Write SQ & \"<br><br>\"
else
end if
else
end if
else
end if
next
Avatar billede kasseper Nybegynder
23. januar 2001 - 13:51 #1
hvilek felter skal du have valideret og for hvad...?
Avatar billede dkkarpen Nybegynder
23. januar 2001 - 16:22 #2
Input felterne:

- Ansvarlig
- Sagsbehandler
- ForelagtAf

for om de eksiterer i tabellen brugere. Denne rutine skulle helst afvikles inden der startes på at smide i databasen således at brugeren kan stilles tilbage med alle indtastede værdier.
Avatar billede eagleeye Praktikant
28. januar 2001 - 14:11 #3
Laver du ikke selv valideringen her?:

SQL2 = \"Select * from Brugere where ( initialer = \'\" & Ansvarlig & \"\')\"
SQL3 = \"select * from brugere where ( initialer = \'\" & sagsbehandler & \"\')\"
SQL4 = \"select * from brugere where ( initialer = \'\" & forelagtaf & \"\')\"

Set rs2 = Conn2.execute (SQL2)
If Not (rs2.BOF Or rs2.EOF) Then
Set rs3 = Conn2.execute (SQL3)
If Not (rs3.BOF Or rs3.EOF) Then
Set rs4 = Conn2.execute (SQL4)
If Not (rs4.BOF Or rs4.EOF) Then
...en masse kode...
endif

Det er den måde jeg vil validere det.
\"Select * from Brugere where ( initialer = \'\" & Ansvarlig & \"\')\"

Du kan ligge validereing lige efter du har åbnet til databasen og hendtet de værdi som måske skal i databasen.
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