yes i have,problem is i m using dynamic form https://github.com/wbraganca/yii2-dynamicform/
and it has single table dynamic form.
i am posting code below
it is view file code.
<?php $form = ActiveForm::begin([
'id' => 'dynamic-form',
'options' =>['class' => 'form-horizontal bv-form',
'enctype' => 'multipart/form-data']]); ?>
<div class="padding-v-md">
<div class="line line-dashed"></div>
</div>
<?php DynamicFormWidget::begin([
'widgetContainer' =>
'dynamicform_wrapper', // required: only alphanumeric characters plus "_" [A-Za-z0-9_]
'widgetBody' => '.container-items', // required: css class selector
'widgetItem' => '.item', // required: css class
'limit' => 1, // the maximum times, an element can be cloned (default 999)
'min' => 1, // 0 or 1 (default 1)
'insertButton' => '.add-item', // css class
'deleteButton' => '.remove-item', // css class
'model' => $models[0],
'formId' => 'dynamic-form',
'formFields' => [
'file',
'file_name'
],
]); ?>
<div class="panel panel-default">
<div class="panel-heading">
<i class="fa fa-envelope"></i> File Upload Book
<!-- <button type="button" class="pull-right add-item btn btn-success btn-xs"><i class="fa fa-plus"></i> Add File</button> -->
<div class="clearfix"></div>
</div>
<div class="panel-body container-items"><!-- widgetContainer -->
<?php foreach ($models as $index => $model): ?>
<div class="item panel panel-default"><!-- widgetBody -->
<div class="panel-heading">
<span class="panel-title-address">File: <?= ($index + 1) ?></span>
<button type="button" class="pull-right remove-item btn btn-danger btn-xs"><i class="fa fa-minus"></i></button>
<div class="clearfix"></div>
</div>
<div class="panel-body">
<fieldset>
<div class="row">
<section class="col-md-12">
<section class="col-md-5">
<?php echo $form->field($model, "[{$index}]file")->widget(FileInput::classname(), [
'name' => 'file',
'pluginOptions' => [
'browseClass' => 'btn btn-success',
'uploadClass' => 'btn btn-info',
'removeClass' => 'btn btn-danger',
'showPreview' => false,
'showCaption' => true,
'showTextbox' => false,
'removeIcon' =>'<i class="fa fa-trash"></i>',
]
]);?>
</section>
<section class="col-md-1">
</section>
<section class="col-md-5">
<?= $form->field($model, "[{$index}]file_name")->textInput(['maxlength' => true]) ?>
</section>
</section>
</div><!-- end:row -->
</fieldset>
</div>
</div>
<?php endforeach; ?>
</div>
</div>
<?php DynamicFormWidget::end(); ?>
<div class="form-actions">
<div class="row">
<div class="col-md-12">
<?= Html::a('<i class="ace-icon fa fa-remove"> Cancel</i>', ['checklist/index'], ['class'=>'btn btn-danger']); ?>
<?= Html::submitButton(Yii::t('app', 'Create'), ['class' => 'btn btn-success']) ?>
</div>
</div>
</div>
<footer>
</footer>
<?php ActiveForm::end(); ?>
</div>
controller code
public function actionFilesUpload(){
$models = [new UploadForm];
if(DynamicModel::loadMultiple($models,Yii::$app->request->post())) {
$model = DynamicModel::createMultiple(UploadForm::classname());
$data=Yii::$app->request->post('UploadForm');
foreach ($data as $index => $modelOptionValue) {
// $files = UploadedFile::getInstanceByName($modelOptionValue, '[{$index}]checklistFile');
// $files = UploadedFile::getInstanceByName($data[$index]['checklistFile']);
// $filelist = \yii\web\UploadedFile::getInstancesByName($modelOptionValue['checklistFile']);
// $filelist = UploadedFile::getInstancesByName($modelOptionValue, '[{$index}]checklistFile');
}
}
return $this->render('_formUpload', [
'models' => (empty($models)) ? [new UploadForm] : $models
]);
}
i printed everything inside for-each but nothing is coming.only post is coming.