2016-10-28 6 views
0

Wie kann ich dieses Passwort haben (umgekehrter Schrägstrich, Schrägstrich, einfaches Anführungszeichen, doppelte Anführungszeichen) dann und dann nur wird es nicht zulassen, sonst wird es mit benutzerdefinierten Validierung.i Don True zurückgegeben Ich habe keine Ahnung von preg_match, also sind alle Vorschläge akzeptabel.preg_match, um bestimmte Sonderzeichen in Zeichenfolge zu ermöglichen

Ich habe unten Code versucht, um das zu erreichen, kann aber keinen Erfolg bekommen.

Also hat jemand einige Vorschläge/Idee?

PHP-Code:

public function check_password($str){ 
     return (!preg_match("/^[[email protected]#$%^&*()_-+|;:<>,.?]+$/i", $str)) ? FALSE : TRUE; 
    } 

wenn i (Rückwärtsschrägstrich, Schrägstrich, Apostroph, doppelte Anführungszeichen) ausschließen setzen wird, dann muss es mir erlauben, Kennwort zu speichern, in der Datenbank

Zum Beispiel:

Password : [email protected]#$%^&*()_-+| ;:<>, // true 
Password : /12345    //false 
Password : [email protected]#$%^&*()_-+| ;:<> //true(here white space also allowed) 
+0

Sie wollen nur für genau die Zeichen testen, auf denen Sie bestehen. Also etwas wie "/ [\\\/\" "]/''. Sie wollen _nicht_ Dinge wie 'a-z0-9' drin haben, da dies den Test auch ohne irgendwelche exotischen Zeichen erfüllen würde. – arkascha

+0

@ arkascha Danke für die Antwort –

+0

also wie kann ich erreichen, dass, weil ich mit '/ [\\\/\ ""] /' versucht habe, aber es funktioniert nicht :( –

Antwort

1

Wenn ich richtig verstehe, möchten Sie nur diese Zeichen - umgekehrter Schrägstrich, Schrägstrich, Anführungszeichen, doppelte Anführungszeichen deaktiviert für Sie Passwort-Validierung. Also hier ist der Code:

public function check_password($str){ 
    return (preg_match('/^[^\\\"\'\/]+$/i', $str)); 
} 
+0

scheint Zitat Zitat mit Code –

+0

Danke für den Kommentar. Fest. – krasipenkov

+0

seine Rückkehr wahr für Passwort/12345 anstelle von false –

0

wie diese versuchen,

public function check_password($str){ 
return (!preg_match('/^(?=.*\d)(?=.*[A-Za-z])[[email protected]#$%]{8,12}$/', $str)) ? FALSE : TRUE; 
} 
+0

Wenn ich ein Passwort mit! @ # $%^& *() _- + | speichern möchte ;: <>, dann false anstelle von true –

+0

Einfach entfernen und mit '!' operator versuchen. –

Verwandte Themen