示例#1
0
 public function processFileField($formAttribute, $dbObject)
 {
     if (YII_DEBUG) {
         error_log("[ProfileForm::processFileField] formAttribute : {$formAttribute}");
     }
     if (YII_DEBUG) {
         error_log("[ProfileForm::processFileField] for object : " . get_class($dbObject));
     }
     $file = UploadedFile::getInstance($this, $formAttribute);
     if ($file && $this->validateFile($file, $formAttribute)) {
         $filename = ProfileForm::getUniqueFileName("{$formAttribute}_", $file->extension);
         if (YII_DEBUG) {
             error_log("[ProfileForm::processFileField] name for new file : {$filename}");
         }
         if (!$file->saveAs(Yii::getAlias('@app/web/uploads/') . $filename)) {
             Yii::$app->session->setFlash($formAttribute, 'Problems due file uploading.. Try another one.');
         } else {
             if (0 < strlen($dbObject->{$formAttribute}) && file_exists(Yii::getAlias('@app/web/uploads/') . $dbObject->{$formAttribute})) {
                 if (YII_DEBUG) {
                     error_log("[ProfileForm::processFileField] unlinking old file : " . $dbObject->{$formAttribute});
                 }
                 unlink(Yii::getAlias('@app/web/uploads/') . $dbObject->{$formAttribute});
             }
             if (YII_DEBUG) {
                 error_log("[ProfileForm::processFileField] set new filename for user : {$filename}");
             }
             $dbObject->{$formAttribute} = $filename;
             if (YII_DEBUG) {
                 error_log("[ProfileForm::processFileField] user {$formAttribute} : {$dbObject->{$formAttribute}}");
             }
         }
     } else {
         if (YII_DEBUG) {
             error_log("[ProfileForm::processFileField] file was not uploaded or not valid");
         }
     }
 }