我在这里阅读了关于这个问题的所有帖子,但没有任何帮助。 我的问题是,如果文件大于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 :(得分:0)
我找到了解决方案......就是那条线:
<input type="hidden" name="MAX_FILE_SIZE" value="1024000">
一旦我删除它就有效了。感谢大家的帮助