Nepoužívat mb_strlen() pro validaci uživatelského jména
Jméno je hned za tím validované regexem jen na ASCII znaky, takže mb_strlen() byl zbytečný a navíc vyžadoval rozšíření mbstring, které na produkčním serveru chybělo a shazovalo registraci s 500.
This commit is contained in:
@@ -54,7 +54,10 @@ function honeypot_triggered(): bool
|
|||||||
function validate_username(string $username, array $rules): array
|
function validate_username(string $username, array $rules): array
|
||||||
{
|
{
|
||||||
$errors = [];
|
$errors = [];
|
||||||
$len = mb_strlen($username);
|
// Uživatelské jméno je o pár řádků níž omezené regexem na čisté ASCII
|
||||||
|
// (A-Z, 0-9), takže obyčejné strlen() stačí a nepřidává závislost na
|
||||||
|
// rozšíření mbstring.
|
||||||
|
$len = strlen($username);
|
||||||
|
|
||||||
if ($len < $rules['username_min'] || $len > $rules['username_max']) {
|
if ($len < $rules['username_min'] || $len > $rules['username_max']) {
|
||||||
$errors[] = sprintf(
|
$errors[] = sprintf(
|
||||||
|
|||||||
Reference in New Issue
Block a user