Assalomu alaykum, yordam.uz saytimizga xush kelibsiz.
Bu saytda o`zingizni qiziqtirgan savollarga javob olishingiz va o`z sohangiz bo`yicha savollarga javob berishingiz mumkin. Bizning Oilamizga a'zo bo`lganingiz uchun chuqur Minnatdorchilik bildiramiz !!!

Yii2 da inputtagi malumotni hisoblangan holda bazaga yuborish

+1 ovoz
128 marta ko‘rilgan
so‘radi 19 yanvar, 18 alfraganus (812 bal)

Assalomu Aleykum,

Yii2 masalan active formda 4 input bor deylik.

<?= $form->field($model, 'test1')->textInput() ?>

<?= $form->field($model, 'test2')->textInput() ?>

<?= $form->field($model, 'test3')->textInput() ?>

<?= $form->field($model, 'test'4)->textInput() ?>

endi databazaga shularga yozilgan qiymatni o'zaro bo'lib, bira to'la umumiy qiymattan chiqgan foizni yuborsam bo'ladimi?

masalan 

;test1/test2* 100; endi shundan chiqgan sonni test4 default value qilib, bazaga yuklashni iloji bormi?

izoh qoldirdi 19 yanvar, 18 Farhodjon (1,192 bal)
Umumiy qiymatni qayerga yubormoqchisiz?
Mani tushunishim bo'yicha bunaqa qilsez bo'ladi:
if ($model->load(Yii::$app->request->post())) {
$model->test = $model->test1 / $model->test2 * 100;
...
}
izoh qoldirdi 19 yanvar, 18 Sardor Dushamov (1,683 bal)
chiqqan natijani js yordamida test4 ni valuesiga berasiz
izoh qoldirdi 19 yanvar, 18 alfraganus (812 bal)
Farhodjon aka, controllerdan bersa ham bo'ladimi?
izoh qoldirdi 19 yanvar, 18 alfraganus (812 bal)
Sardor aka, biror misol bera olasizmi iltimos?
izoh qoldirdi 21 yanvar, 18 Sardor Dushamov (1,683 bal)
nima ish qilmoqchiligingizni sal oydinroq qilib yozing, mojet boshqacha usullar ishlatish kerakdir
izoh qoldirdi 22 yanvar, 18 Hasan (424 bal)
public function actionCreate()
    {
        $model = new Database();
if ($model->load(Yii::$app->request->post())) {
            $model->test4 = ($test1/test2)*100;
            $model->save(false);
            return $this->redirect(['index']);
        } else {
            return $this->render('create', [
                'model' => $model,
            ]);
        }
    }
Alfraganus siz Farhodjon aka yozgan kodni Controllerda yozsa bo'ladimi degansiz o'zi bu kod Controllerda yoziladi. Agar Ma'lumot yaratayotgan bosez
izoh qoldirdi 22 yanvar, 18 alfraganus (812 bal)
Rahmat katta Hasan aka, Albatta sinab ko'raman

1 ta javob

+1 ovoz
javob berdi 24 yanvar, 18 Muxiddin (180 bal)

Bunaqa boladigan bolsa uni beforesave ga yozganiz yaxshi. Modelni ichiga
 

public function beforeSave($insert)
    {
        if ($insert) {
            $this->test4 = ($this->test1/$this->test2) * 100;
        }
        return parent::beforeSave($insert);
    }

Assalomu alaykum, yordam.uz saytimizga xush kelibsiz.

Bu saytda o`zingizni qiziqtirgan savollarga javob olishingiz va o`z sohangiz bo`yicha savollarga javob berishingiz mumkin.

Bizning Oilamizga a'zo bo`lganingiz uchun chuqur Minnatdorchilik bildiramiz !!!

Telegram kanal YordamUzRss

...