"Completely Automated Public Turing test to tell Computers and Humans Apart" ingilizce kelimelerinin kısaltması olarak CAPTCHA ifadesi kullanılmaktadır. "Bilgisayarları ve İnsanları Ayırmak için Tamamen Otomatikleştirilmiş Genel Turing testi" anlamına gelir.
CAPTCHA Nasıl kullanılır?
Öncelikle SiteController
dosyasında aşağıda ki gibi bir ekleme yapmalıyız.
class SiteController extends Controller
{
// ...
public function actions()
{
return [
// ...
'captcha' => [
'class' => 'yii\captcha\CaptchaAction',
'fixedVerifyCode' => YII_ENV_TEST ? 'testme' : null,
],
];
}
// ...
}
Daha sonda model dosyamızda aşağıda ki gibi bir değişiklik yapmalıyız. Hangi model dosyasında kullanacaksınız dikkat etmelisiniz.
class ContactForm extends Model
{
// ...
public $verifyCode;
// ...
public function rules()
{
return [
// ...
['verifyCode', 'captcha'],
];
}
// ...
}
Son olarak view
dosyanızda CAPTCHA remini göstermek için aşağıda ki kodları eklemeniz gerekir.
<?php $form = ActiveForm::begin(['id' => 'contact-form']); ?>
// ...
<?= $form->field($model, 'verifyCode')->widget(Captcha::className()) ?>
// ...
<?php ActiveForm::end(); ?>