Avatar billede akki Nybegynder
23. august 2004 - 09:27 Der er 8 kommentarer og
1 løsning

Hvordan tjekke man om en bruger har brugt speciel tegn..

jeg skal lave et login system, hvor brugerns password skal indholde både tal og bokstaver..

hvordan laver man et tjek på det??
Avatar billede anhansen Nybegynder
23. august 2004 - 09:39 #1
med regulære udtryk. ereg.
Avatar billede akki Nybegynder
23. august 2004 - 09:51 #2
hvordan... evt eks..
Avatar billede dennismp Nybegynder
23. august 2004 - 10:16 #3
// har brugeren brugt !
if( strpos($text,'!') !== false )
  print "Du må ikke bruge "!"';

// Brugeren må kun bruge a-d
if(! preg_match("/^[a-d]*$/", $text ) )
  print "Du må kun bruge a,b,c og d";

// man må kun bruge tal
if(! ctype_digit($text) )
  print "Kun tal, mester.";

// kodeordet skal indeholde tal og bogstaver
if(! preg_match("/^(\d+\w+|\w+\d+)[\w\d]*$/", $text ) )
  print "De kodeord skal indeholde BÅDE tal og bogstaver";
Avatar billede anhansen Nybegynder
23. august 2004 - 10:39 #4
som i ovenstående...
kort forklaring:
\d = digit = tal
\w = word = bogstav
+ = 1 eller flere
* = 0 eller flere
| = eller
dvs. din streng starter enten med 1 eller flere tal efterfulgt af et eller flere bogstaver ELLER starter med 1 eller flere bogstaver efterfulgt af et eller flere tal herefter fulgt af vilkårligt mange tegn eller bogstaver.
dennismp -> Bør det ikke være [\w|\d]* til sidst. Altså enten w eller d
Avatar billede anhansen Nybegynder
23. august 2004 - 10:46 #5
regulære udtryk er en rigtig god ting at lære.. Du kan gøre utroligt meget med dem - hvis man lærer at beherske dem.
Avatar billede dennismp Nybegynder
23. august 2004 - 10:46 #6
jo, det skulle det havde været.
Avatar billede anhansen Nybegynder
23. august 2004 - 12:46 #7
hmm.. smider lige et svar, just-in-case.
Avatar billede Slettet bruger
23. august 2004 - 13:09 #8
Nej, det skulle ikke være [\w|\d]*

[] angiver et sæt af tegn og [\w\d] betyder netop et hvilketsomhelst tegn, der enten er et bogstav eller et tal. [\w|\d] betyder et hvilketsomhelst tegn, der enten er et bogstav, et tal eller en pipe. (|-tegnet hedder pipe)
Avatar billede anhansen Nybegynder
23. august 2004 - 17:00 #9
ok.. så er jeg også blivet lidt klogere.. ;-)
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
Vi tilbyder markedets bedste kurser inden for webudvikling

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