【发布时间】:2014-09-25 08:20:52
【问题描述】:
我正在寻找一种方法,在 Prestashop 1.5.6.2 上的客户注册表单上提出一些要求,以便密码长度至少应为六个字符,并且至少包含一个大写字母。
至少六个字符的第一件事已经完成,但需要配置密码中至少一个大写字母的要求。有谁知道怎么做?
老客户应该仍然可以使用他们的旧密码登录。
谢谢。
【问题讨论】:
标签: php passwords prestashop requirements prestashop-1.5
我正在寻找一种方法,在 Prestashop 1.5.6.2 上的客户注册表单上提出一些要求,以便密码长度至少应为六个字符,并且至少包含一个大写字母。
至少六个字符的第一件事已经完成,但需要配置密码中至少一个大写字母的要求。有谁知道怎么做?
老客户应该仍然可以使用他们的旧密码登录。
谢谢。
【问题讨论】:
标签: php passwords prestashop requirements prestashop-1.5
您需要重写 Validate::isPasswd() 方法。就是这样。
【讨论】:
用于智能验证 文件路径 /project_folder/themes/theme_name/templates/_partials/form-fields.tpl
<input
class="form-control js-child-focus js-visible-password"
name="{$field.name}"
type="password"
value=""
pattern="{literal}(?=.*\d)(?=.*[a-z])(?=.*[A-Z])(?=.*[$%^&@#]).{8,}{/literal}"
oninvalid="setCustomValidity('Must contain at least one number and one uppercase and lowercase letter, one special symbol($%^&@#) and at least 8 or more characters.')"
oninput="setCustomValidity('')"
{if $field.required}required{/if}
>
对于后端验证,覆盖 Validate::isPasswd() 或定义新方法来验证模式
【讨论】: