Validation یا اعتبارسنجی با AJAX در فریمورک Yii
اعتبار سنجی username باید فقط در سمت سرور انجام شود، زیرا تنها سرور دارای اطلاعات مورد نیاز است. در این مورد، شما می توانید از اعتبارسنجی مبتنی بر AJAX استفاده کنید.
مرحله 1 - برای فعال کردن AJAX validation، ویو registration را به شکل زیر تغییر دهید.
<?php
use yii\bootstrap\ActiveForm;
use yii\bootstrap\Html;
?>
<div class = "row">
<div class = "col-lg-5">
<?php $form = ActiveForm::begin(['id' => 'registration-form',
'enableAjaxValidation' => true]); ?>
<?= $form->field($model, 'username') ?>
<?= $form->field($model, 'password')->passwordInput() ?>
<?= $form->field($model, 'email')->input('email') ?>
<?= $form->field($model, 'country') ?>
<?= $form->field($model, 'city') ?>
<?= $form->field($model, 'phone') ?>
<div class = "form-group">
<?= Html::submitButton('Submit', ['class' => 'btn btn-primary',
'name' => 'registration-button']) ?>
</div>
<?php ActiveForm::end(); ?>
</div>
</div>
همچنین ما باید سرور را آماده کنیم تا بتواند درخواست های AJAX را انجام دهد.
مرحله 2 – متد actionRegistration را از SiteController به شکل زیر ویرایش کنید.
public function actionRegistration() {
$model = new RegistrationForm();
if (Yii::$app->request->isAjax && $model->load(Yii::$app->request>post())) {
Yii::$app->response->format = Response::FORMAT_JSON;
return ActiveForm::validate($model);
}
return $this->render('registration', ['model' => $model]);
}
مرحله 3 - حال به http://localhost:8080/index.php?r=site/registration بروید، متوجه خواهید شد که اعتبار سنجی فرم توسط درخواست های AJAX انجام می شود.
این فصل در یک نگاه:
…
سلام . پیشنهاد میکنم حتما دموی دوره رو مشاهده کنید درباره فریم ورک Yii: در پاسخ به سوالات : آیا این فریم ورک سریع است؟ آیا این یک فریم ورک امن است؟ آیا این یک فریم ورک حرفه ای است؟ آیا ا…این فصل در یک نگاه:
…
پیشنهاد میکنیم دمو دوره رو حتما مشاهده کنید با سلام خدمت دوستان عزیز . ابتدا عرض کنم که این دوره برای دوستانی آماده شده که میخوان وب اپلیکیشن های مدرنی رو طراحی بکنن و وارد بازار کار ط…