2012-04-03 109 views
0

我在這裏看到關於這個問題的每一篇文章,但沒有任何幫助。 我的問題是,如果文件大於1.5 MB,我的html表單不會將任何內容放入文件路徑。例如,如果我上傳正常大小的文件,它回顯文件的臨時路徑, ,但如果我上傳一個更大的文件(比如4MB)它只是顯示我沒有錯誤,但我可以看到服務器上的空文件。 我試圖設置php.ini中的值並創建了所有正確值的.htacces文件,但沒有任何幫助。上傳大文件

我的代碼是:

<form method="post" action="test2.php" enctype="multipart/form-data"> 
<div> 
<label for="upload">Select file</label> 
<input type="hidden" name="MAX_FILE_SIZE" value="1024000"> 
<input name="upload" type="file" /> 
<input type="submit" name="Submit" value="Upload" /> 
</div> 
</form> 


<?php 

    if (isset($_POST['Submit'])) { 
     if (!empty($_FILES['upload']['name'])) { 
     $ch = curl_init(); 
     $localfile = $_FILES['upload']['tmp_name']; 
     echo $localfile."</br></br>" ; 
     $fp = fopen($localfile, 'r'); 
     curl_setopt($ch, CURLOPT_URL, 'ftp://ans.projects.jce.ac.il/public_ftp/incoming/'.$_FILES['upload']['name']); 
     curl_setopt($ch, CURLOPT_USERPWD, "user:password"); 
     curl_setopt($ch, CURLOPT_TIMEOUT_MS, 0); 
     curl_setopt($ch, CURLOPT_UPLOAD, 1); 
     curl_setopt($ch, CURLOPT_INFILE, $fp); 
     curl_setopt($ch, CURLOPT_INFILESIZE, filesize($localfile)); 
     curl_exec ($ch); 
     $error_no = curl_errno($ch); 
     curl_close ($ch); 
     if ($error_no == 0) { 
      $error = 'File uploaded succesfully.'; 
     } else { 
      $error = 'File upload error.'; 
     } 
} 

    else { 
      $error = 'Please select a file.'; 
     } 
} 
    echo $error; 
?> 
+0

您是否更改'upload_max_filesize'? – safarov 2012-04-03 08:50:41

+0

是的,我做到了100M – Dudipoli 2012-04-03 08:51:27

+0

嘗試echo ini_get('upload_max_filesize')'或者查看phpinfo以查看是否真的發生了變化 – safarov 2012-04-03 08:53:08

回答

0

我找到了解決辦法...這是該行:

<input type="hidden" name="MAX_FILE_SIZE" value="1024000"> 

一旦我刪除它,它的工作。感謝大家的幫助