Avatar billede madsleejensen Nybegynder
11. juni 2007 - 16:23 Der er 8 kommentarer og
1 løsning

Form validation.

Hej jeg er begyndt at rode lidt med validation af mine forms.

lad os sige jeg har en TextBox som vil indeholde et navn
har tilføjet en RequiredFieldValdition på dette object.

nu er jeg at jeg kommer fra et PHP miljø.. hvor jeg som regl satte min form action til en anden side end min form side.

hvad er mest rigtigt at gøre i asp.net .. at bruge en postback til form siden og lave en IsPostBack / Page.Validate() -> IsValid og så indsætte mit navn i db eller hva der nu skal ske.. eller kan man som i php smide brugeren til en anden side, og gøre dette ? og hvis man kan det hvordan kan jeg så validere inputtet fra brugeren  (serverside)

håber der er nogen der kan hjælpe med at rette lidt tvilv ud hos mig. på forhånd tak!
Avatar billede neoman Novice
11. juni 2007 - 16:32 #1
Du kan sagtens smide brugeren til anden side, men det er lidt overflødigt.

Validatoren kan udskrive en besked på den samme side i ValidationSummary, og alt dette sker på klientsiden, så du slipper for en gang frem-og-tilbage, selv om det kan være nok så rart, en gang imellem :-).

Alle steder man kigger på nettet anbefales, at du uanset client-side validering også validerer på serveren.
Avatar billede madsleejensen Nybegynder
11. juni 2007 - 16:46 #2
og får at være 101% sikker så gøres det ved Page.Validate() -> IsValid ?
Avatar billede neoman Novice
11. juni 2007 - 16:51 #3
Mig bekendt så er det du beskriver blot udtryk for, at valideringen er lykkedes på klient siden, og med lidt ildhu kan man sikkert snyde systemet. Med server-side valideringen mente jeg at checke om værdien/værdierne nu er som den/de skal være, uanset udfaldet af client-side valideringen, inden man sender den videre, eller pløkker den ned i DB'en. Hvis du bruger parametre til din SQL, så burde du være sikret mod SQL-injection.
Avatar billede madsleejensen Nybegynder
11. juni 2007 - 17:00 #4
jaja sql-injections osv er ikke det jeg valdiere efter lige pt..
men en i min *.cs fil

if ( IsPostBack ) {

Page.Validate();
if ( Page.IsValid ) {

// INSERT I DB ?
}
}

er vel en server side validtion..
Avatar billede neoman Novice
11. juni 2007 - 17:33 #5
Jeg ved det ikke.

Her : http://msdn2.microsoft.com/en-us/library/0ke7bxeh(vs.80).aspx

fremgår det ikke ret tydeligt, hvad der sker med de kontroller som kører valideringsscript ude på klienten - om de så også bliver kaldt på serveren, eller om man specifikt skal få dem til at køre på serveren, hvis man ønsker server-side validering.
Avatar billede jokkejensen Novice
11. juni 2007 - 19:48 #6
De bliver kaldt på serveren med Page.IsValid.

Du kan også tage en kontrol afgangen, med controlID.IsValid, eller en validerings gruppe.

/JJ
Avatar billede madsleejensen Nybegynder
12. juni 2007 - 15:52 #7
ja okai s¨å jeg med skal bare lige have det rigtigt ind i hovedet hva der kører på server og hva der bliver lavet til client.. mange tak for hjælpen begge i er meget velkommen til at smide et svar
Avatar billede neoman Novice
20. juni 2007 - 16:17 #8
Ellers tak, jeg springer over, siden jeg ikke har besvaret dit spørgsmål:)
Avatar billede madsleejensen Nybegynder
12. september 2008 - 18:22 #9
lukker, skriv hvis i ombestemmer jer ang. points
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
IT-kurser om Microsoft 365, sikkerhed, personlig vækst, udvikling, digital markedsføring, grafisk design, SAP og forretningsanalyse.

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