天天看點

解決Moodle自定義form的檔案上傳,會被系統自動删除解決Moodle自定義form的檔案上傳,會被系統自動删除

解決Moodle自定義form的檔案上傳,會被系統自動删除

問題:

二次開發Moodle的時候,在繼承系統自帶moodleform類來實作表單送出時,通過使用系統自帶的檔案上傳(filemanager、filepicker)會出現檔案上傳一段時間後會自動被系統删除(丢失),導緻檔案擷取失敗。

原理分析:

1.使用系統自帶的檔案上傳,當把檔案放在上傳框時,系統就已經把此檔案上傳到伺服器上。
2.系統檔案上傳儲存在files表中,其中files表字段:contenthash為預設儲存在$CFG->dataroot/filedir/下的檔案名(檔案開頭4個字元串為它的父級檔案夾),值為檔案内容的唯一辨別,如果兩個檔案相同會指向同一個地方,以下是files表部分重要字段意義:
Pathnamehash為

繼續閱讀