繁体   English   中英

yii2将2个图像上传到不同的数据库字段

[英]yii2 upload 2 images to different database fields

我已经有一个文件上传页面,它工作正常,但我需要创建另一个字段来上传另一个图像,它不工作..

这是我的_form ,它的工作原理

<?= $form->field($model, 'file')->fileInput(['onchange'=>'readURL(this)'])->label(false) ?>

我在模型文件中定义了$ file2,并将此行添加到_form

<?= $form->field($model, 'file2')->fileInput(['onchange'=>'readURL(this)'])->label(false) ?>

这是我在shopcontroller文件中的代码的另一部分

 if ($model->load(Yii::$app->request->post()) ) {


             $model->file    =   UploadedFile::getInstance($model, 'file');
             $model->file2   =   UploadedFile::getInstance($model, 'file2');

                    if($model->file!='')
                    {

                        $model->ShopLogo  =  time().'.'.$model->file->extension;

                    }

                    if($model->file2!='')
                    {

                        $model->pic=  time().'.'.$model->file2->extension;

                    }

守则的另一部分

                $dir = 'web/shop/'.$model->Id;

                if($model->file!='')
                {
                    if(!file_exists($dir))
                    {
                        mkdir($dir);

                    }

                    $model->file->saveAs($dir."/". $model->ShopLogo);
                } 

                if($model->file2!='')
                {
                    if(!file_exists($dir))
                    {
                        mkdir($dir);

                    }

                    $model->file2->saveAs($dir."/". $model->pic);

                 }

我该怎么办才能修复它?

time()函数返回自Unix Epoch(1970年1月1日00:00:00 GMT)以来的秒数测量的当前时间。

如果两个文件具有相同的ext和时间之间的差异

$model->ShopLogo  =  time().'.'.$model->file->extension;

$model->pic=  time().'.'.$model->file2->extension; 

不到一秒钟

$model->ShopLogo = $model->pic

并且您将两个文件写入相同的文件名

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM