>  기사  >  백엔드 개발  >  모듈에 인증 코드를 추가하는 Yii2 방법

모듈에 인증 코드를 추가하는 Yii2 방법

小云云
小云云원래의
2018-02-12 13:53:061398검색

최근 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 부분이 사이트/captcha의 기본 사용으로 인해 발생하기 때문입니다. [php와 html이 섞여서 페이지가 헷갈리는데, 매개변수 설정부분을 빼보세요]


$captchaConfig = [
  'name' => 'captchaimg',
  'captchaAction' => ['/admin/default/captcha'],
  &#39;template&#39; => &#39;<p class="form-group"><p>{image}</p></p>&#39;,
  &#39;imageOptions&#39; => [
    &#39;id&#39; => &#39;captchaimg&#39;,
    &#39;title&#39; => &#39;换一个&#39;,
    &#39;alt&#39; => &#39;换一个&#39;,
    &#39;style&#39; => &#39;cursor:pointer;margin-left:25px;&#39;,
  ],
];


<?=Captcha::widget($captchaConfig);?>

관련 추천 :

vuex2.0 모듈 예제 자세한 설명

Yii2 모듈에 인증 코드를 추가하는 방법 방법에 대한 자세한 설명

yaf 프레임워크의 모듈 아래 디렉터리 및 2차 도메인 이름 구성

위 내용은 모듈에 인증 코드를 추가하는 Yii2 방법의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.