Il est divisé en trois aspects : la configuration du contrôleur, la configuration des règles du modèle et la configuration des vues.
Étape 1 : Configuration du contrôleur
Configurez le code suivant dans les actions, et le lien du code de vérification de la demande correspond à "contrôleur/captcha".
'captcha' => [ 'class' => 'yii\captcha\CaptchaAction', // 'backColor'=>0x000000,//背景颜色 'maxLength' => 4, //最大显示个数 'minLength' => 4,//最少显示个数 'padding' => 5,//间距 'height'=>45,//高度 'width' => 75, //宽度 // 'foreColor'=>0xffffff, //字体颜色 'offset'=>4, ],
Étape 2 : Configurer les règles du modèle, c'est-à-dire vérifier la configuration.
Déclarez d'abord les variables publiques
public $verifyCode
Deuxièmement configurez la vérification dans la méthode des règles
['verifyCode', 'captcha','captchaAction'=>'user/captcha','on' => ['login']]
Ajoutez "captchaAction" dans cette configuration Configuration , c'est-à-dire le routage du contrôleur. S'il n'est pas configuré, le routage site/captcha sera utilisé. Il s'agit du routage de l'exemple de framework.
Étape 3 : Configuration dans la vue
Ajoutez le code suivant à ActiveForm :
<?= $form->field($model,'verifyCode')->widget( Captcha::className(), [ 'template' => '{image}{input}', 'captchaAction'=>'user/captcha', // 此注意要使用自己配置的那个控制器验证码路由 'imageOptions'=>[ 'style'=>'cursor:pointer;width:77px'] ] )
Enfin il y a un énorme problème de fosse : En raison de l'utilisation de certains caractères de nouvelle ligne ou d'espaces sous Windows pendant le processus de codage, une sortie inconnue est provoquée et l'image du code de vérification ne peut pas être générée normalement.
Cela nécessite d'ajouter le code suivant à la méthode renderImageByGD dans la classe CaptchaAction :
imagecolordeallocate($image, $foreColor); ob_clean(); // 此行为插入代码,目的是清空缓存区为输出图片提供干净空间。 ob_start(); imagepng($image); imagedestroy($image);
site Web chinois php, un grand nombre de tutoriels d'introduction yii gratuits, bienvenue pour apprendre en ligne!
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!