2013-07-26 17 views
1

我得到這樣的問題,我必須在瀏覽器中創建文件發送系統,但是對於大文件(> 50M)。我有POST_MAX_SIZE set at 32M but FILE_MAX_SIZE is 128M。 所以我必須把類型文件按鈕,並閱讀完整的路徑發送它的PHP FTP庫。 你有什麼解決方案嗎? (filetype.value returns only filename, not path)。使用php發送文件沒有POST,但在使用type =文件

回答

1

是,

使用FileReader在HTML5定義讀取文件到客戶端。一旦你將它通過Ajax發送到你的服務器,你可以在服務器上完全訪問該文件。

上,您可以設置接受最大文件大小的服務器,根據該SO Post.

; Maximum allowed size for uploaded files. 
upload_max_filesize = 40M 

; Must be greater than or equal to upload_max_filesize 
post_max_size = 40M 
+0

恐怕FileReader並不會讓我太喜歡,因爲通過AJAX發送文件也使用POST數組,並且我已將POST減少到32 M.我無法以任何方式增加限制,因爲我沒有這樣的SSH權限。 我必須從類型=文件通過JS – user2623638

0

可以增加文件大小在php.ini文件「的upload_max_filesize = 256」,然後重新啓動Apache服務器

+0

得到完整路徑不,我不能,因爲它只是租用服務器上的空間:< – user2623638

+0

//定義文件大小限制 $ limit_size = 50000; –

+0

我希望這個鏈接可以幫助你: http://www.phpeasystep.com/phptu/3.html –

0

upload_max_filesizepost_max_size是PHP_INI_PERDIR設置 - http://www.php.net/manual/en/ini.list.php。他們是多變的(http://php.net/manual/en/configuration.changes.modes.php)-

項可以在php.ini中設置的.htaccess,httpd.conf文件或.user.ini(自PHP 5.3)

在你的根使用.user.ini文件如果你的服務器的PHP版本大於PHP 5.3,PHP會掃描你的根目錄下的ini文件,並將它與默認設置合併在一起。

我最近使用它並更改了默認t值爲upload_max_filesize,從2M到5M爲我的個人需求。它也可能適用於你。創建一個命名爲.user.ini文件,將參數設置爲:記住的post_max_size要大於upload_max_filesize更大,因爲前者是上界POST的

post_max_size = ... 
upload_max_filesize = ... 

熊。

相關問題