2013-02-22 87 views
1

我無法在PHP中讀取大小約爲25mb的大文件。我嘗試將最大輸入文件大小更改爲50MB,但仍然無法正常工作。 這是表單的代碼。上傳文件無法正常工作,至大

<html> 
<body> 

<form action="parsed_xml.php" method="post" 
enctype="multipart/form-data"> 
<label for="file">Filename:</label> 
<input type="file" name="file" id="file"><br> 
<input type="submit" name="submit" value="Submit"> 
</form> 

</body> 
</html> 

這是PHP文件中的代碼:

<?php 
if ($_FILES["file"]["error"] > 0) 
    { 
    echo "Error: " . $_FILES["file"]["error"] . "<br>"; 
    } 
else 
    { 
    print_r ($_FILES["file"]); 
    echo "Upload: " . $_FILES["file"]["name"] . "<br>"; 
    echo "Type: " . $_FILES["file"]["type"] . "<br>"; 
    echo "Size: " . ($_FILES["file"]["size"]/1024) . " kB<br>"; 
    echo "Stored in: " . $_FILES["file"]["tmp_name"]; 
    } 
?> 

我沒有得到任何錯誤,沒有什麼是被存儲在$ _FILES數組英寸

感謝

詹姆斯

+1

查看post_max_size以及 – 2013-02-22 11:20:59

+0

您可能還會增加php文件set_time_limit(999)的時間限制; – 2013-02-22 11:26:18

回答

0

只需增加「php.ini」中的最大文件大小,或者如果您無法訪問php.ini,請在Web根目錄中創建一個「.htaccess」。

例10MB:

upload_max_filesize = 10M 
post_max_size = 10M 
4

聲音對我說,你需要增加的Apache設置的限制,在php.ini文件:

post_max_size=50M 
upload_max_filesize=50M 

如果您沒有訪問ini文件,請你的主機增加限制。

2

兩個PHP配置選項控制最大上傳大小:upload_max_filesizepost_max_size。對於10兆字節的文件大小,它們都可以設置爲「10M」。

但是,您還需要考慮完成上載所需的時間。 PHP腳本通常在30秒後超時,但一個10MB文件需要至少3分鐘才能在健康的寬帶連接上進行上傳(請記住,上傳速度通常比下載速度慢5倍)。此外,操縱或保存上傳的圖像也可能導致腳本超時。因此,我們需要將PHP的max_input_timemax_execution_time設置爲300(以秒爲單位指定5分鐘)。

您可以設置,然後使用:

1. in php.ini - set these values and restart server 
    2. set it in htaccess 
    3. Set in your php code using ini_set 

編號:http://www.sitepoint.com/upload-large-files-in-php/

0

檢查服務器的上傳限制。您需要增加它才能上傳大文件。

只是一個檢查:你改變配置後重新啓動PHP進程嗎?

0

如果你還沒有在php.ini文件的存取使用功能 「的ini_set」。