[yii2] Membuat Form Login dengan Captcha

bardimin pic

Ditulis oleh Bardimin

Tanggal 17 April 2021
Home » Blog » Teknologi » [yii2] Membuat Form Login dengan Captcha

Menambahkan ke form login cukup mudah dan dapat dilakukan dalam tiga langkah:

  1. Pada models/LoginForm.php Anda harus menambahkan field dan rules validasi.
  2. Dalam views/site/login.php Anda harus manampilkan field captcha.
  3. Pada controllers/SiteController.php Anda harus menambahkan captcha action.

Dalam tutorial ini, saya ingin menunjukkan kepada Anda cara membuat captcha di form login, tetapi Anda dapat menambahkan captcha ke form apa pun dengan mengikuti langkah-langkah ini.

1. Menambahkan field captcha dan rules validasi pada models/LoginForm.php

Pertama-tama Anda perlu mengubah form login seperti yang dijelaskan di atas. Kemudian, Anda harus menambahkan properti publik bernama verifyCode dan rules validasinya.

class LoginForm extends Model
{
	.............
	.............
    public $verifyCode;
	.............

    public function rules()
    {
        return [
            .............
            .............

            ['verifyCode', 'required'],
            ['verifyCode', 'captcha'],
			
            .............
            .............
        ];
    }
	.............
	.............	
}

2. Menambahkan widget pada views/site/login.php

.............
.............

<div class="site-login">
	.............
	.............

    <div class="row">
        <div class="col-lg-5">
            <?php $form = ActiveForm::begin(['id' => 'login-form']); ?>

				.............
				.............

				<?= $form->field($model, 'verifyCode')->widget(\yii\captcha\Captcha::class) ?>

				.............
				.............
	
            <?php ActiveForm::end(); ?>
        </div>
    </div>
</div>

3. Menambahkan action pada controller/SiteController.php

Agar captcha berfungsi, Anda harus menambahkan action captcha ke controllers/SiteController.php. Mungkin action tersebut sudah ada karena templat aplikasi Yii2 standar menambahkannya secara otomatis.

.............
.............

class SiteController extends Controller
{
	.............
	.............
	
    public function actions()
    {
        return [
			.............
			.............
			
            'captcha' => [
                'class' => 'yii\captcha\CaptchaAction',
            ],
			.............
			.............
        ];
    }
	
	.............
	.............	
}

Artikel Terbaru

Teknik Dasar Perawatan Komputer dan Laptop

Teknik Dasar Perawatan Komputer dan Laptop

Anda mungkin tidak menyadarinya, tetapi komputer dan mobil memiliki kesamaan, keduanya membutuhkan perawatan rutin. Jika mobil Anda perlu mengganti oli secara rutin, komputer Anda secara rutin juga harus memperbarui perangkat lunak, menjaga antivirus tetap up to date,...

ChatGPT versi Desktop untuk Windows, Linux dan Mac

ChatGPT versi Desktop untuk Windows, Linux dan Mac

Apakah Anda tahu apa itu ChatGPT? Apakah Anda tahu cara mendapatkan dan menginstal ChatGPT di perangkat Anda? ChatGPT dengan cepat menjadi salah satu penemuan terpenting dalam dunia pemrosesan bahasa alami. Anda dapat menggunakannya untuk menghasilkan tanggapan...

Voltase Pinout Power Supply ATX 24 pin ke Motherboard

Voltase Pinout Power Supply ATX 24 pin ke Motherboard

Power Supply mengubah daya arus bolak-balik (AC) menjadi arus searah (DC) yang dikendalikan tegangan rendah. Beberapa perangkat Power Supply menyertakan pilihan tegangan input manual, sementara yang lain secara otomatis menyesuaikan. Power Supply mengubah tegangan...

Google Chrome – Buka Bookmark ke Tab Baru Secara Default

Google Chrome – Buka Bookmark ke Tab Baru Secara Default

Bookmark adalah pintasan untuk membuka halaman website yang telah anda simpan untuk anda kunjungi lagi nantinya. Pernahkah Anda mengunjungi halaman situs web yang cukup menarik dan anda ingin untuk mengunjunginya lagi nanti. Mengingat alamat halaman website tentu...

Mengenal Folder $WinREAgent dan Cara Menghapusnya di Windows 11

Mengenal Folder $WinREAgent dan Cara Menghapusnya di Windows 11

Setiap proses update dan upgrade Windows akan menghasilkan folder $WinREAgent. Pada proses update dan upgrade Windows akan membuat banyak file dan folder pada saat proses mengunduh dan menginstal pembaharuan tersebut. Lokasi file dan folder yang dibuat secara otomatis...

x