EC-CUBE – パスワード登録時に半角英数字混在をチェックする
パスワードの登録時のチェックについて、数字のみ、または英字のみはエラーとしたい場合。
下記の2点を加えればOK。
□ SC_CheckError.php
/** * PASS_FORMAT_CHECK * * 値が半角英数字の混在かチェック * @param array $value value[0]=項目名 value[1]=判定対象パスワード * @return void */ function PASS_FORMAT_CHECK($value) { if (isset($this->arrErr[$value[1]])) { return; } $this->createParam($value); if (preg_match("/[0-9].*[a-zA-Z]|[a-zA-Z].*[0-9]/s", $this->arrParam[$value[1]]) == 0) { $this->arrErr[$value[1]] = "※ " . $value[0] . "は半角英数字を混ぜて入力してください。<br />"; }
□ SC_Helper_Customer.php
public function sfCustomerRegisterErrorCheck(&$objErr, $isAdmin = false) { /*** 中略 ***/ $objErr->doFunc(array('パスワード', 'password'), array('PASS_FORMAT_CHECK')); /*** 中略 ***/ }
この記事へのコメントはありません。