• Najnowsze pytania
  • Bez odpowiedzi
  • Zadaj pytanie
  • Kategorie
  • Tagi
  • Zdobyte punkty
  • Ekipa ninja
  • IRC
  • FAQ
  • Regulamin
  • Książki warte uwagi

Wymagania dotyczące hasła PHP

Object Storage Arubacloud
0 głosów
767 wizyt
pytanie zadane 5 listopada 2018 w PHP przez xxkondzioxx15 Obywatel (1,440 p.)
edycja 5 listopada 2018 przez xxkondzioxx15

Witam, tworzę wymóg hasła w formularzu rejestracji.

Chciałbym aby w haśle był wymóg:. Jak mogę wykonać to w PHP? Zrobiłem coś takiego:

 

Wymóg dla hasła: minimum 1 duża litera, minimum 1 cyfra, tak aby nie musiały być one obok siebie(kolejność nie ma znaczenia) oraz aby długość hasła była od 6 do 30 znaków (nie musi być w tym wyrażeniu bo mogę to zrobić sobie osobno w ten sposób:

if ((strlen($password1) < 6) || (strlen($password1) > 30)) {
				$result = array('msg' => "Password must be between 6 to 30 characters!");
				echo json_encode($result);
				die;

Co do tych wymagań to zrobiłem coś takiego:

function check_pass($password) {
			if (preg_match('/^(?=.*[A-Z])(?=.*\d)\w{6,30}$/', $password)) {
			return true;
			} else {
			return false;
			    }
			}

if (!check_pass($password)) {
			$result = array('msg' => "blad!");
			echo json_encode($result);
			die;
			}

Po takim zapytaniu dostaję taki komunikat: Warning: preg_match(): Compilation failed: nothing to repeat at offset 25

Przykład

Testowo1 - prawidłowe

testOwo1 -prawidłowe

TESTowo123- prawidłowe

testowo -źle

te1stowo -źle

testowo444 -źle

Co mam nie tak w funkcji wymogu? Bardzo mi na tym zależy więc proszę o pomoc. Pozdrawiam! Będę wdzięczny za każdą wskazówkę.

1 odpowiedź

0 głosów
odpowiedź 5 listopada 2018 przez X3h Dyskutant (9,540 p.)
wybrane 6 listopada 2018 przez xxkondzioxx15
 
Najlepsza
Sprawdziłem regex i kod. Wynika z tego, że nie wiadomo co wynika. W tym sandboxie działa poprawnie dla twoich przykładów: http://sandbox.onlinephpfunctions.com/code/97a6411ae5ddb85372e52b18e6a5a7bde1e87124

Pokaż drogę wykonywania argumentu $password, którą przekazujesz do funkcji check_pass($password)
1
komentarz 6 listopada 2018 przez xxkondzioxx15 Obywatel (1,440 p.)
Już działa to. Argument $password nie istniał w ogóle. Istniał, ale $password1. Dziękuję za odpowiedź.

Podobne pytania

0 głosów
1 odpowiedź 819 wizyt
0 głosów
2 odpowiedzi 1,269 wizyt
pytanie zadane 13 maja 2018 w JavaScript przez shizeerr Początkujący (260 p.)
0 głosów
1 odpowiedź 142 wizyt
pytanie zadane 3 czerwca 2020 w PHP przez Klaudiaaa Początkujący (390 p.)

92,542 zapytań

141,383 odpowiedzi

319,482 komentarzy

61,929 pasjonatów

Motyw:

Akcja Pajacyk

Pajacyk od wielu lat dożywia dzieci. Pomóż klikając w zielony brzuszek na stronie. Dziękujemy! ♡

Oto polecana książka warta uwagi.
Pełną listę książek znajdziesz tutaj.

Akademia Sekuraka

Kolejna edycja największej imprezy hakerskiej w Polsce, czyli Mega Sekurak Hacking Party odbędzie się już 20 maja 2024r. Z tej okazji mamy dla Was kod: pasjamshp - jeżeli wpiszecie go w koszyku, to wówczas otrzymacie 40% zniżki na bilet w wersji standard!

Więcej informacji na temat imprezy znajdziecie tutaj. Dziękujemy ekipie Sekuraka za taką fajną zniżkę dla wszystkich Pasjonatów!

Akademia Sekuraka

Niedawno wystartował dodruk tej świetnej, rozchwytywanej książki (około 940 stron). Mamy dla Was kod: pasja (wpiszcie go w koszyku), dzięki któremu otrzymujemy 10% zniżki - dziękujemy zaprzyjaźnionej ekipie Sekuraka za taki bonus dla Pasjonatów! Książka to pierwszy tom z serii o ITsec, który łagodnie wprowadzi w świat bezpieczeństwa IT każdą osobę - warto, polecamy!

...