PHP jelszó név validálás

PHP jelszó név validálás
2013-06-24T22:24:31+02:00
2013-06-25T11:07:08+02:00
2022-10-15T22:15:36+02:00
lummy
Sziasztok!
Ahhoz kérnék, segítséget, hogy egy formról postolok egy jelszót, és ezt szeretném validálni. Azt szeretném, hogy ne lehessen benne ékezetes karakter. Ezzel próbálkozok de nem megy:


preg_match("[A-Za-z0-9]", $_POST['pass'])

Továbbá szeretnék még egy felhasználónév validátort. Ebben sem lehet ékezet, és ne legyen benne speciális karakter. Hogyan lehet megcsinálni? Előre is köszönöm a válaszokat!
Mutasd a teljes hozzászólást!
Az előző hozzászólásokat vedd mindenképpen figyelembe. Ha ez valami spéci feladat akkor pl a speciális karaktereket így szűrheted:

preg_match('/['\/~`\!@#\$%\^&\*\(\)_\-\+=\{\}\[\]\|;:"\<\>,\.\?\\]/', $input)

Nyilván ezen logika mentén belepakolhatod az ékezetes karaktereket is.

Ha ez nem valami feladat, hanem tényleg az oldaladra szeretnéd a loginhoz akkor semmiképpen nem ajánlom.

Abban az esetben legalább legyen 6-7 karakter a jelszó betű szám spec karakter vegyesen mehet bele nyugodt szívvel, különben pillanatok alatt feltörik. Valamint a post adatot reményeim szerint az adatbázis műveletbe nem így írod be
WHERE pass='$_POST['pass'] ....

Előtte illenék escapelni pl:
$pass = mysql_real_escape_string($_POST['pass']); //db művelet $sql = "SELECT * FROM `users` WHERE `username`='$username' AND password='$pass'";

Sok sikert!
Mutasd a teljes hozzászólást!

  • egy jelszóban az a poén minél több spec karaktert tartalmazzon.
    egy ilen gyenge jelszót pikk pakk megbrute-forcolnak.
    Mutasd a teljes hozzászólást!
  • Esetleg már érdemes kliens oldalon megfogni, mint ezen a LINK-en a "Jquery űrlap .blur() segítségével(titusz11)" cím alatti teszten...
    Mutasd a teljes hozzászólást!
  • Ebben sem lehet ékezet, és ne legyen benne speciális karakter


    És a karakterek számát nem akarod meghatározdni pl. max 2?
    Azt is meg lehet csinálni, hogy még könyebb legyen a feltörése
    Mutasd a teljes hozzászólást!
  • Az előző hozzászólásokat vedd mindenképpen figyelembe. Ha ez valami spéci feladat akkor pl a speciális karaktereket így szűrheted:

    preg_match('/['\/~`\!@#\$%\^&\*\(\)_\-\+=\{\}\[\]\|;:"\<\>,\.\?\\]/', $input)

    Nyilván ezen logika mentén belepakolhatod az ékezetes karaktereket is.

    Ha ez nem valami feladat, hanem tényleg az oldaladra szeretnéd a loginhoz akkor semmiképpen nem ajánlom.

    Abban az esetben legalább legyen 6-7 karakter a jelszó betű szám spec karakter vegyesen mehet bele nyugodt szívvel, különben pillanatok alatt feltörik. Valamint a post adatot reményeim szerint az adatbázis műveletbe nem így írod be
    WHERE pass='$_POST['pass'] ....

    Előtte illenék escapelni pl:
    $pass = mysql_real_escape_string($_POST['pass']); //db művelet $sql = "SELECT * FROM `users` WHERE `username`='$username' AND password='$pass'";

    Sok sikert!
    Mutasd a teljes hozzászólást!
  • Köszönöm szépen a normális választ. A jelszót hagyom békén. Viszont a felhasználónévnél, nem szokták engedni, hogy legyen benne ékezet, meg spec karakter. Nem?
    Mutasd a teljes hozzászólást!
  • Hát ha megnézed akkor itt a prog.hu-n is engedélyezve vannak az ékezetek a felhasználónevekben ezzel nincs is gond. Pl gondolj bele van egy regisztrálód aki a saját nevét adná meg.
    és pl Kis-Makró Elek a neve ebben van ékezet is és spec karakter is ezt engedni kell a felhasználónak. ha midnent bekorlátozol a user csak felcseszi magát.
    Mutasd a teljes hozzászólást!
  • Köszönöm, értem,akkor nem fogom korlátozni.
    Mutasd a teljes hozzászólást!
Tetszett amit olvastál? Szeretnél a jövőben is értesülni a hasonló érdekességekről?
abcd