我在这里阅读了关于这个问题的每一篇文章,但都没有对我有帮助。我的问题是,如果文件大于1.5MB,我的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;
?>发布于 2012-04-04 16:37:48
我找到了解决方案。就是这句话:
<input type="hidden" name="MAX_FILE_SIZE" value="1024000">一旦我移除它,它就起作用了。感谢大家的帮助
https://stackoverflow.com/questions/9989939
复制相似问题