23. maj 2010 - 18:56Der er
17 kommentarer og 1 løsning
Return false focus i en anden fil?
Hej
Jeg har en kontaktformular,der består af 2 filer. Fil nummer et består af selve formularen i ren html, og fil nummer to består af php, der behandler de indtastede data.
Hvis et felt i formularen er tomt, vil php i fil nummer to skrive en besked herom + et link, der fører tilbage til fil nummer et. Altså f.eks.:
"Indtast venligst dit navn". + tilbage-link
Er det for hver validering muligt at tilføje en return false, der automatisk stiller cursoren (focus) i det pågældende felt i formularen i fil nummer et?
I fil nummer to har jeg sessions, som "husker" og viser det indtastede i formularen.
Ja det er, og der er mange måder at gøre det på. Humlen er at fil nr. 2 skal fortælle fil nr. 1 hvorfor et felt som den skal stille cursoren i, og på den måde danne det javascript som udføre handlingen.
Men... hvordan tjekker du op på data? Du finder vel alle fejl brugeren har lavet i formularen, og fortæller det på en gang?
>Men... hvordan tjekker du op på data? Du finder vel alle fejl >brugeren har lavet i formularen, og fortæller det på en gang?
Jeg gør det godt nok enkeltvis for hvert felt, men kunne evt. lave det om. Casper, kan du henvise til et eksempel på, hvordan man kan gøre det.
Jeg tænker også på at lave valideringerne vha. JavaScript, men det bliver ofte frarådet, da man kan slå JavaScript fra i sin browser. Men ok, det er kun en kontaktformular til privat brug - hvor farligt kan det være? ;-)
Men hvis det ikke er meget omstændigt kunne jeg måske godt finde på at afprøve den anden mulighed.
"Men ok, det er kun en kontaktformular til privat brug - hvor farligt kan det være?" >> Hvis du er ligeglad med, om jeg tømmer hele din database, kan du sagtens nøjes med at validere med JavaScript =)
- men af hensyn til brugeren kan du jo sagtens kombinere splazz' forslag i #2 med serverside validering.
Du skal altid validere brugerinput på serveren, inden du bruger det til noget somhelst - men det forhindrer dig ikke i at bruge JavaScript til at gøre livet lettere for brugeren
det var bestemt heller ikke ment som at der kun skulle valideres med javascript, men jeg synes bare at det er nemmere at se om indholdet kan bruges, inden man bliver sendt videre til næste side, så er man fri for at gemme det indtastede data og fylde det i felterne igen ved returnering til form-siden efter mislykket validering på serveren.
selvfølgelig skal data ALTID valideres på serveren uanset om det er blevet valideret af javascript eller ej!
I min kontaktformular bliver der ikke skrevet noget til en database. I fil nummer to sker der følgende:
1. Der sættes sessions for at huske og vise, hvad der er blevet indtastet i felterne i fil nummer et.
2. Der valideres for korrekte indtastninger
3. Hvis alt er udfyldt korrekt, vises det indtastede på skærmen samt sendes til mig (webmaster)
>Humlen er at fil nr. 2 skal fortælle fil nr. 1 hvorfor et felt >som den skal stille cursoren i, og på den måde danne det >javascript som udføre handlingen.
Er der nogen, der kan henvise til et (simpelt)eksempel på dette?
>Du skal altid validere brugerinput på serveren Det ved jeg vist ikke, hvordan man gør.
Jeg overvejer kraftigt at gå tilbage til i højere grad / i første omgang at bruge Javascript til valideringer.
Det gør det vist lidt lettere for mig at overskue. Dermed kan jeg måske også nemmere lave de ting jeg gerne vil.
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.