簡體   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