olafmoriarty
Medlem
Jobber med å lage nye nettsider, og sitter akkurat nå og koder et registreringsskjema der nye brukere kan registrere seg på sidene. Selve kodingen er ikke et problem, men det er enkelte områder hvor jeg lurer på hva som er vanlig praksis blant dere andre. Det er snakk om et sosialt nettverk, ikke en nettbutikk.
Jeg er av den oppfatningen at det skal være så enkelt som mulig å registrere seg. Derfor etterspør jeg bare den aller nødvendigste informasjonen i registreringsskjemaet, og det kommer jeg fram til at er disse feltene:
Tar gjerne imot innspill dersom dere føler at det er noe viktig jeg har glemt, forsåvidt.
Men det store spørsmålet her er: Hva slags krav bør jeg stille til input i disse feltene?
E-postadressen sjekker jeg om er en gyldig e-postadresse, og jeg sjekker at den ikke eksisterer i brukerdatabasen fra før. Det jeg ikke klarer å bestemme meg for er hvorvidt brukeren skal være nødt til å bekrefte e-postadressen eller ikke. Bør jeg kreve av brukeren at han eller hun før de kan begynne å bruke siden skal gå til e-postkontoen sin og klikke på en link i en tilsendt e-post for å aktivere brukeren, eller oppleves dette bare som unødvendig stress? Hvordan gjør dere dette?
Brukernavn: Her sjekker jeg selvsagt om brukernavnet allerede er i bruk, men burde jeg sjekke noe mer? Burde jeg ha en minimumslengde? En maksimumslengde? Forbudte tegn? Jeg bruker selvsagt uansett mysql_real_escape_string() når stringen skal inn i databasen og htmlentities() når stringen skal printes ut til skjermen, er det da egentlig noen hensikt i å ha forbudte tegn? Makslengde på brukernavn er kanskje en nødvendighet for at jeg skal kunne lagre dette brukernavnet i et varchar-felt i databasen, men hva bør denne grensen ligge på?
Passord: Bør jeg ha minimumslengde? Minimumskrav til hvor komplekst passordet skal være (f.eks. at det må inneholde både bokstaver og tall)? Dette krypteres uansett før lagring i databasen, så her er ikke makslengde viktig for databasens del - burde jeg ha en makslengde likevel?
Har dere evt. andre normer dere følger når dere lager registreringsskjemaer for nye brukere?
Har også planer om å få det meste av verdivalidering lagt inn i et lite Ajax-script slik at brukeren ser det med en gang dersom verdiene de oppgir ikke kan brukes.
Jeg er av den oppfatningen at det skal være så enkelt som mulig å registrere seg. Derfor etterspør jeg bare den aller nødvendigste informasjonen i registreringsskjemaet, og det kommer jeg fram til at er disse feltene:
- E-postadresse
- Brukernavn
- Passord / gjenta passord
- Captcha
- Avkrysningsboks «Jeg godtar brukervilkårene»
Tar gjerne imot innspill dersom dere føler at det er noe viktig jeg har glemt, forsåvidt.
Men det store spørsmålet her er: Hva slags krav bør jeg stille til input i disse feltene?
E-postadressen sjekker jeg om er en gyldig e-postadresse, og jeg sjekker at den ikke eksisterer i brukerdatabasen fra før. Det jeg ikke klarer å bestemme meg for er hvorvidt brukeren skal være nødt til å bekrefte e-postadressen eller ikke. Bør jeg kreve av brukeren at han eller hun før de kan begynne å bruke siden skal gå til e-postkontoen sin og klikke på en link i en tilsendt e-post for å aktivere brukeren, eller oppleves dette bare som unødvendig stress? Hvordan gjør dere dette?
Brukernavn: Her sjekker jeg selvsagt om brukernavnet allerede er i bruk, men burde jeg sjekke noe mer? Burde jeg ha en minimumslengde? En maksimumslengde? Forbudte tegn? Jeg bruker selvsagt uansett mysql_real_escape_string() når stringen skal inn i databasen og htmlentities() når stringen skal printes ut til skjermen, er det da egentlig noen hensikt i å ha forbudte tegn? Makslengde på brukernavn er kanskje en nødvendighet for at jeg skal kunne lagre dette brukernavnet i et varchar-felt i databasen, men hva bør denne grensen ligge på?
Passord: Bør jeg ha minimumslengde? Minimumskrav til hvor komplekst passordet skal være (f.eks. at det må inneholde både bokstaver og tall)? Dette krypteres uansett før lagring i databasen, så her er ikke makslengde viktig for databasens del - burde jeg ha en makslengde likevel?
Har dere evt. andre normer dere følger når dere lager registreringsskjemaer for nye brukere?
Har også planer om å få det meste av verdivalidering lagt inn i et lite Ajax-script slik at brukeren ser det med en gang dersom verdiene de oppgir ikke kan brukes.