Avatar billede weblance Nybegynder
31. august 2007 - 15:59 Der er 6 kommentarer og
1 løsning

Hjælp til at lave en preg_match

Jeg er i gang med at lave en form for validering. Jeg skal hente noget data fra en formular som kun må indeholde tal. Jeg tænkte på at lave en:

if(preg_match("her skal der stå et eller andet", $_POST['textfelt']))
{
echo "Forkert, prøv igen";
}
else
{
echo "I orden";
}

Men hvad skal der så efter preg_match(... ?
Avatar billede nielle Nybegynder
31. august 2007 - 16:01 #1
Sådan?

if (preg_match("#\d+#", $_POST['textfelt']))
{
    echo "Forkert, prøv igen";
}
else
{
    echo "I orden";
}
Avatar billede michael_stim Ekspert
31. august 2007 - 16:12 #2
Men hvorfor validere på serveren? Hvorfor ikke direkte i klienten? Så slipper du for ar reloade siden.
Se bort fra denne kommentar hvis det er pga sikkerhed.
Avatar billede nielle Nybegynder
31. august 2007 - 16:39 #3
Selvfølgelig bør man validere på client-side - det er simpel brugervenlighed.

Men man må *aldig* glemme at følge op med validere på server-side! Ellers har man ingen som helst sikkerhed imod joe-the-hacker:

1) Validering på klienten - brugervenlighed.
2) Validering på serveren - sikkerhed (og evt. brugervenlighed).
Avatar billede weblance Nybegynder
31. august 2007 - 19:07 #4
Jeg bruger faktisk begge dele, lidt AJAX på klienten og af sikkerhedsårsager også på serveren . . . bla. for at undgå mail injection.

Tak for hjælpen nielle . . . send lige et svar!
Avatar billede nielle Nybegynder
31. august 2007 - 22:05 #5
Svar :^)
Avatar billede coderdk Praktikant
01. september 2007 - 14:48 #6
Nielles bør være:

if (preg_match("#^\d+$#", $_POST['textfelt']))
{
    echo "Forkert, prøv igen";
}
else
{
    echo "I orden";
}

Ellers vil sdkfjsdkf1231342skdjflksdjf også være ok. Alternativt is_numeric()
Avatar billede nielle Nybegynder
01. september 2007 - 18:50 #7
Helt korrekt! :^)
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