From ae81e0f85ecdd007fdcfaa234c144e84fa8d7cf2 Mon Sep 17 00:00:00 2001 From: wangyidong Date: Thu, 18 Feb 2016 11:00:05 +0800 Subject: [PATCH] * adjust code for upload image. --- module/file/model.php | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/module/file/model.php b/module/file/model.php index 127f186066..9e1c046e8c 100644 --- a/module/file/model.php +++ b/module/file/model.php @@ -431,6 +431,7 @@ class fileModel extends model $files = $zip->listContent(); foreach($files as $i => $uploadFile) { + if($uploadFile['folder']) continue; $extension = strtolower(substr(strrchr($uploadFile['filename'], '.'), 1)); if(empty($extension) or !in_array($extension, $this->config->file->imageExtensions)) return false; } @@ -438,7 +439,9 @@ class fileModel extends model $extractedFiles = array(); foreach($files as $i => $uploadFile) { - $fileName = mb_convert_encoding($uploadFile['filename'], 'UTF-8', 'gb2312'); + if($uploadFile['folder']) continue; + $fileName = mb_convert_encoding($uploadFile['filename'], 'UTF-8', 'gbk'); + $fileName = substr($fileName, strrpos($fileName, '/') + 1); $file = array(); $file['extension'] = $this->getExtension($fileName); @@ -448,7 +451,7 @@ class fileModel extends model $fileName = basename($file['pathname']); $file['realpath'] = $filePath . $fileName; - $list = $zip->extract(PCLZIP_OPT_BY_NAME, $uploadFile['filename'], PCLZIP_OPT_EXTRACT_AS_STRING); + $list = $zip->extract(PCLZIP_OPT_BY_INDEX, $i, PCLZIP_OPT_EXTRACT_AS_STRING); if($list) { file_put_contents($file['realpath'], $list[0]['content']);