浏览按钮找不到文件上传404文件目录

时间:2014-03-06 10:14:40

标签: php html forms file-upload

您好我正在尝试为我的网站创建一个上传部分,我查看了多个网站和示例,例如:

W3Schools

我发现有多种方法可能会出错,例如mysql注入是由于他们使用$_FILES["file"]["type"]。所以我开始关注这个链接,因为它来自php自己,PHP Documentation

好的到达我的问题我现在有一个问题,我有一个简单的表单,运行PHP脚本检查文件上传,然后上传,如果它是正确的,如果它是无效的这不是部分工作,文件上传,但如果它是一个大文件我得到404文件或目录未找到错误,但如果它是一个较小的文件大小,它适用任何想法。

HTML表单是

<form enctype="multipart/form-data" action="upload_file.php" method="POST">
<!-- MAX_FILE_SIZE must precede the file input field -->
<input type="hidden" name="MAX_FILE_SIZE" value="300000000" />
<!-- Name of input element determines name in $_FILES array -->
Send this file: <input name="userfile" type="file" />
<input type="submit" value="Send File" />

,PHP文件代码是

    <?php
// In PHP versions earlier than 4.1.0, $HTTP_POST_FILES should be used instead
// of $_FILES.

$uploaddir = './';//
$uploadfile = $uploaddir . basename($_FILES['userfile']['name']);

echo '<pre>';
if (move_uploaded_file($_FILES['userfile']['tmp_name'], $uploadfile)) {
    echo "File is valid, and was successfully uploaded.\n";
} else {
    echo "Possible file upload attack!\n";
}

echo 'Here is some more debugging info:';
print_r($_FILES);

print "</pre>";

?>

任何想法都会受到高度赞赏,或者如果有人知道更好的例子可供使用。

3 个答案:

答案 0 :(得分:0)

检查php.ini文件中的upload_max_filesize - 2M

答案 1 :(得分:0)

PHP中的最大文件大小可能会受到限制。在php.ini中,检查以下属性:

upload_max_filesize = 10M
post_max_size = 10M

如果不做任何更改,您还可以尝试检查内存限制或最长处理时间。

答案 2 :(得分:0)

我对Windows Server不太熟悉,但我搜索了一下并找到了这个文档:

http://www.webmasterworld.com/microsoft_asp_net/3986574.htm

这表示你的php.ini文件应位于:

C:\Windows\System32\PHP\php.ini

如果找到此文件,请查找并编辑以下行:

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

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

希望这有帮助! : - )