最近在修改檔案zip上傳然後能自動解壓縮的模組。
然後發現一問題~解壓縮能解,但我要如何讓它在指定的
$temp_dir_extract = $temp_dir .'/unzip';中,檔案再多目錄分類呢?
因為我的檔案可能有資料夾解開是裡面有相同格式的檔案,結果全解在unzip的資料夾裡。
/**
* Submit the upload unzip form
*/
function files_upload_submit($form, &$form_state) {
global $user;
$temp_dir = file_create_path(RCOURIER_TEMP_DIRECTORY);
$temp_dir_extract = $temp_dir .'/unzip';
$uploaded_file = file_save_upload('files_upload', array(), $temp_dir);
require_once('libs/pclzip.lib.php');
$archive = new PclZip($uploaded_file->filepath);
$archive->extract(
PCLZIP_OPT_PATH, $temp_dir_extract,
PCLZIP_OPT_REMOVE_ALL_PATH
);
$new_files = file_scan_directory($temp_dir_extract, '\.pdf$');
}
附加檔案 | 大小 |
---|---|
pclzip.lib_.php_.txt | 198.09 KB |
Re: 模組修改問題
按你的需求修改unzip path 啊 ??
$temp_dir_extract = $temp_dir .'/unzip';
---
notaBlueScreen | 訂閱RSS | Plurk
Re: 模組修改問題
嗯~>w<我再研究看看~
Re: 模組修改問題
我知道原因了~把PCLZIP_OPT_REMOVE_ALL_PATH
這去掉就能解法我上面遇到的問題了~我的檔案就不會全混在一起了
Re: 模組修改問題
或說你前幾天寄給我的Email, 我回了, 但不斷反彈, 你檢查一下你的forward address是否錯了
Gmail也傻傻的, 不斷幫我重寄
---
notaBlueScreen | 訂閱RSS | Plurk
Re: 模組修改問題
kay.l是吶~我的帳號的信箱錯了。
但是我不能修改我的帳號資訊的說…
就一直秀「電子郵件位址 xxx 已經註冊過了。忘記密碼了嗎?」
(我沒多的電子郵件位址重註冊的)
這要我要如何修改我的電子郵件位址呢?我發覺我的信箱@的gmail我把它取為gmaill多一個l
Re: 模組修改問題
哦... 可能你注冊過了 ??
可以在 email 中加1點
例如
judy.abcd@gmail.com
都會寄去
judyabcd@gmail.com
---
notaBlueScreen | 訂閱RSS | Plurk
Re: 模組修改問題
OK我改好了。>w<真是不好意思~
Re: 模組修改問題
您好~
我問前遇到了自動解壓縮的問題~
想請問大魔王您的解決方式...
是修改module嗎?
是的話是修改哪個module?
該從何下手呢?
我的想法是將檔案上傳後即解壓縮,
但我找不到該將程式寫在哪?及怎麼寫!
或是否可以將您的程式提供給我呢?
謝謝!
Re: 模組修改問題
hi~你好:
寫在upload模組中,以下有我之前的討論~有將code放在裡面
http://drupaltaiwan.org/forum/20100219/4042#comment-13498
心中常存善解、包容、感思、知足、惜福 (靜思語錄)
Re: 模組修改問題
您好~
我還是不太懂...
您的意思是...?
將解壓縮的程式 ,也就是將本文第一篇的function files_upload_submit()
寫在function theme_upload_attachments()中嗎?
即可自動將檔案解壓?
Re: 模組修改問題
嗯沒錯~
心中常存善解、包容、感思、知足、惜福 (靜思語錄)
Re: 模組修改問題
實作的如何?可以用嘛?
心中常存善解、包容、感思、知足、惜福 (靜思語錄)
Re: 模組修改問題
請大魔王幫幫忙....
我搞了許久還是搞不出來
資料夾建不了,檔案更是沒有解壓縮...
不是是我程式有錯還是linux的權限設定.....
我將下面程式寫在upload.module的function theme_upload_attachments()中
$path = 'vm';
$filetype_dir = file_create_path($path);
if(!file_exists($filetype_dir)){
drupal_install_mkdir($path);//建立資料夾
drupal_set_message('Creating Directory '. $path, 'status');
}
require_once('pclzip/pclzip.lib.php');
$archive = new PclZip($file->filepath);//檔案位置
$archive->extract($filetype_dir);//解壓縮位置
Re: 模組修改問題
將這檔案覆蓋於modules\upload中~ (記得要備份)
心中常存善解、包容、感思、知足、惜福 (靜思語錄)
Re: 模組修改問題
我將檔案覆蓋於modules\upload
再將下面程式寫在upload.module的function theme_upload_attachments()中
但一樣沒反應....
$path = 'vm';
$filetype_dir = file_create_path($path);
if(!file_exists($filetype_dir)){
drupal_install_mkdir($path);//建立資料夾
drupal_set_message('Creating Directory '. $path, 'status');
}
require_once('pclzip/pclzip.lib.php');
$archive = new PclZip($file->filepath);//檔案位置
$archive->extract($filetype_dir);//解壓縮位置
Re: 模組修改問題
下面的程式不用寫~蓋掉就好了~
我的作頁系統是win2003的~~linux的話你可能得查一下權限了…
心中常存善解、包容、感思、知足、惜福 (靜思語錄)
Re: 模組修改問題
謝謝大魔王的幫忙!!
@@
請問大魔王有關解壓縮的程式寫在哪裡?
我沒看見有關解壓縮的程式!
Re: 模組修改問題
就寫在function theme_upload_attachments($files) {..... } 中。
上面檔案改這份
心中常存善解、包容、感思、知足、惜福 (靜思語錄)
Re: 模組修改問題
非常感謝大魔王...
想再請問...
filenameRemoveExtensionName()
我查過這不是drupal的function
這是需要再另外寫的functon?
Re: 模組修改問題
嗯~是另外寫的~
所以說你有成功了?
心中常存善解、包容、感思、知足、惜福 (靜思語錄)
Re: 模組修改問題
不~還沒成功
解壓縮的程式應該是filenameRemoveExtensionName()中吧
我還沒寫出來 冏
另外,okFileType()是用來判斷副檔名的對吧?
依照大魔王的寫法,是解壓縮檔中的壓縮檔。
將資料夾中index.html先zip再zip整個資料夾對吧?
Re: 模組修改問題
我寫出來了~
謝謝大魔王還是該稱貝努鳥的幫忙~
我是改filefield模組的
在顯示縮圖function中加上解壓縮程式
在刪除檔案function的地方加上刪除解壓的檔案~
Re: 模組修改問題
嗯!後來是改filefield模組嘛?
有改出來就好~
我是貝努鳥,拉之心魂,引領前往杜埃(en:Duat)的諸神之嚮導。 (死者之書錄)