PDA

View Full Version : ثبت 1 فرم در چند مرحله بکمک ajax در yii2



Amir_f
شنبه 17 آبان 1393, 18:57 عصر
سلام دوستان
من یک جدول دارم که 9 تا ستون داره ، میخوام توی هر مرحله 3 تا ستون رو ذخیره کنم با ajax توی جدول
میشه با مثال راهنمایی کنید ، ممنون

MMSHFE
شنبه 17 آبان 1393, 21:02 عصر
هر مرحله فیلدها رو بگیرین و توی مدل بگذارین. مدل رو serialize کنید و توی سشن بگذارین. مرحله بعد اول unserialize کنید و بعد مقادیر جدید رو داخلش بگذارین و دوباره serialize کنید. مرحله آخر هم ثبت کنید.

Amir_f
شنبه 24 آبان 1393, 16:23 عصر
استاد امکان داره با یک مثال ساده راهنمایی کنید ؟
ممنون

MMSHFE
شنبه 24 آبان 1393, 16:50 عصر
مثالی از اکشن ثبت نام:

public function actionRegister($step = 1)
{
$model = new Users;
if(Yii::app()->user->hasState('register')) {
$model->attributes = unserialize(Yii::app()->user->getState('register');
}
if(isset($_POST['Register'])) {
$model->attributes = $_POST['Register'];
Yii::app()->user->setState('register', serialize($model->attributes));
}
if($step == 7) { // Last step
if($model->save()) {
$this->redirect('login');
}
}
$this->render('register-step' . $step, $model);
}توی این روش برای هر مرحله یک فایل ویو جداگانه به اسامی register-step1 و... استفاده میشه. بهبود و ارتقای روش رو بعهده خلاقیت خودتون میگذارم.