Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/oop/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php Yii2 Kartik多选列表错误数组_combine()_Php_Oop_Yii2 - Fatal编程技术网

Php Yii2 Kartik多选列表错误数组_combine()

Php Yii2 Kartik多选列表错误数组_combine(),php,oop,yii2,Php,Oop,Yii2,我使用带有多个选项的Kartik select dropDownList 我可以在循环中添加一些项目,但无法更新项目的,因为我得到了 怎么了 在循环中创建新项的我的控制器操作 public function actionCreate() { $model = new reservation(); if (Yii::$app->request->isAjax && $model->load(Yii::$app->request->

我使用带有多个选项的Kartik select dropDownList

我可以在循环中添加一些项目,但无法更新项目的,因为我得到了

怎么了

在循环中创建新项的我的控制器操作

 public function actionCreate()
{
    $model = new reservation();

    if (Yii::$app->request->isAjax && $model->load(Yii::$app->request->post())) {
        Yii::$app->response->format = Response::FORMAT_JSON;
        return ActiveForm::validate($model);
    }
    if ($model->load(Yii::$app->request->post())) {
        foreach ($_POST['Reservation']['id_place']  as $key=> $item) {


            $model->id_reservation = NULL;
            $model->create_at = date('Y-m-d H:i:s');
            $model->auth_key = Yii::$app->security->generateRandomString();
            $model->id_place=$item;
            $model->isNewRecord = true;
            $model->save();
        }
        return $this->redirect(['view', 'id' => $model->id_reservation]);

    } else {
        $model->auth_key = Yii::$app->security->generateRandomString();
        return $this->renderAjax('create', [
            'model' => $model,

        ]);
    }
}
我的更新操作

public function actionUpdate($id)
{
    $model = $this->findModel($id);

    if ($model->load(Yii::$app->request->post()) && $model->save()) {
        return $this->redirect(['view', 'id' => $model->id_reservation]);
    } else {
        return $this->render('update', [
            'model' => $model,
        ]);
    }
}
我的看法

echo $form->field($model, 'id_place')->widget(Select2::classname(), [

    'theme' => Select2::THEME_KRAJEE,

    'language' => 'pl',
    'options' => ['placeholder' => 'Select  place',
        'id' => 'rezerwacja',
        'multiple'=>true,

    ],
    'pluginOptions' => [
        'allowClear' => true,

    ],
])->label("Miejsce:  max (5)"); ?>

我以前没有使用过这个小部件,但是我在github上发现了相同的错误:()。乍一看,您错过了视图中小部件中的数据属性<代码>$form->field($model,'id_place')->小部件(选择2::classname(),['data'=>$data,…])->标签(“Miejsce:max(5)”$数据是选择选项data items()的数组。我希望它能帮助你。是的,你是对的!!它起作用了。我忘记了这一点,因为我使用动态加载选择thorug jquery;)现在,我设置了空数组“data”=>[],它正在工作。谢谢你,伙计。