この記事では主に Yii2 モジュールに 検証コード を追加する方法を紹介します。編集者が非常に優れていると考えたので、参考として共有します。エディターをフォローして見てみましょう
最近、Yii2 の検証コード部分を試してみました。通常のロジックは解決できますが、オンラインのサンプルでは問題はありません。重要な問題の部分は、モジュール内で使用される場合です。みんなで共有してください。読み進める前に、通常の状況での使用方法を確認してください。
コントローラー部分のコードはインターネット上にあるものと同様です
public function actions() { return [ 'captcha' => [ 'class' => 'yii\captcha\CaptchaAction', 'fixedVerifyCode' => null, 'backColor' => 0x000000, //背景颜色 'maxLength' => 6, //最大显示个数 'minLength' => 5, //最少显示个数 'padding' => 5, //间距 'height' => 40, //高度 'width' => 130, //宽度 'foreColor' => 0xffffff, //字体颜色 'offset' => 4, //设置字符偏移量 有效果 ], ]; }
モデル部分のコード【ここで注意が必要な点】
public function rules() { return [ ['username', 'required', 'message' => '登录账号不能为空'], ['password', 'required', 'message' => '登录密码不能为空'], ['verifyCode', 'required', 'message' => '验证码不能为空'], ['verifyCode', 'captcha', 'captchaAction' => 'admin/default/captcha', 'message' => '验证码输入错误'], ['rememberMe', 'boolean'], ['password', 'validatePassword'], ]; }
ルール内のverifyCodeには、 に対応する値を追加する必要がありますcaptchaAction、それ以外の場合は検証コードの検証が表示されますが、パスせず、検証コードの番号は変更されません。その理由は、コードの
view 部分が site/captcha のデフォルトの使用によって引き起こされているためです。 phpとhtmlが混在したレイアウトでは、ページスタイルのわかりにくいレイアウトに耐えられないので、パラメータ設定部分をできるだけ削除するようにしてください】
$captchaConfig = [ 'name' => 'captchaimg', 'captchaAction' => ['/admin/default/captcha'], 'template' => '<p class="form-group"><p>{image}</p></p>', 'imageOptions' => [ 'id' => 'captchaimg', 'title' => '换一个', 'alt' => '换一个', 'style' => 'cursor:pointer;margin-left:25px;', ], ];
<?=Captcha::widget($captchaConfig);?>
以上がYii2のモジュールに検証コードを追加する方法を詳しく解説の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。