ホームページ >バックエンド開発 >PHPチュートリアル >Yii2に認証コードを追加する手順を詳しく解説 yii2.0認証コード yii認証コードが表示されない yii2カスタム認証

Yii2に認証コードを追加する手順を詳しく解説 yii2.0認証コード yii認証コードが表示されない yii2カスタム認証

WBOY
WBOYオリジナル
2016-07-29 08:51:531068ブラウズ

当初、yii2 フレームワークの検証コードは非常に包括的であると考えていましたが、Baidu と Google を試してみたところ、ほとんどのチュートリアルが分散していて不完全であることがわかり、完全な手順を含む検証コードのチュートリアルを書こうと考えました。

サイト/ログインフォームのログインには確認コードの追加が必要であると想定しています。

1. siteController コントローラーのアクション メソッドは、キャプチャ設定を追加します

public function actions() { 
return [ 
'captcha' => [ 
'class' => 'yii\captcha\CaptchaAction', 
'maxLength' => 4, 
'minLength' => 4 
], 
]; 
}

このために、どのような設定項目があるのか​​興味がある人もいます。コードの背景色、フォント ファイル、その他の設定を含む、vendaryiisoftyii2captcha ファイルを表示します。

2. siteController の設定を続けます。

public function behaviors() { 
return [ 
'access' => [ 
'class' => AccessControl::className(), 
'rules' => [ 
[ 
'actions' => ['login', 'error', 'captcha'], 
'allow' => true, 
], 
], 
]; 
}

アクセス ルールのアクションにキャプチャ メソッドのアクセシビリティを追加します。

3. ビューレイヤーを見て、確認コードの入力を追加してみましょう。

use yii\captcha\Captcha; 
<&#63;= $form->field($model, 'verifyCode')->widget(Captcha::className(), [ 
'template' => '<div><div>{image}</div><div>{input}</div></div>', 
]) ?> 

4. これで十分でない場合は、検証コードの検証ルールも追加する必要があります

ここでは LoginForm を使用しているので、LoginForm ファイルを変更します

class LoginForm extends Model { 
//...... public $verifyCode; 
public function rules() { 
return [ 
//...... 
['verifyCode', 'captcha'], 
]; 
} 
public function attributeLabels() { 
return [
'verifyCode' => '', //验证码的名称,根据个人喜好设定 
]; 
} 
} 
//定义了verifyCode属性 
//rules规则添加了验证 
//label中定义了其显示名称 

5. 4番目の手順へ 確認コードが設定されると、正常に表示されます。バックグラウンドで rbac 権限制御が設定されている場合は、構成に /site/captcha のアクセス許可を accss として追加する必要があると思います。

6. 効果を確認してください。

yii2 验证码,yii,yii 获取验证码,yii 验证码不正确,验证码,yii 验证码不刷新,yii2.0 验证码,yii 验证码 不显示,yii2 自定义验证

7. ページを更新しても確認コードが更新されないのはなぜかと質問した生徒もいましたが、個人的には、更新されるかどうかは関係ないと思います。確認コードは間違って入力した場合にのみ更新されます。確認コードが表示され、ページが更新されます。確認コードに従うためにページを更新する必要がある場合は、それを実現する簡単な方法を試してください。

$('验证码对象').click();

つまり、ページが更新されたときに確認コードをもう一度クリックすると、強制的に更新されます。

上記は編集者が紹介したYii2での認証コード追加手順です。皆様のお役に立てれば幸いです。

上記では、yii と検証コードの内容を含め、Yii2 に検証コードを追加する詳細な手順を紹介しました。PHP チュートリアルに興味のある友人に役立つことを願っています。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。