Кнопка обзора для загрузки файла 404 директория файла не найдена

0

Привет Я в настоящее время пытается создать раздел загрузки для моего сайта, я просмотрел несколько веб-сайтов и примеры, такие как:

W3Schools

Я обнаружил, что есть несколько способов, которые могут пойти не так, например, mysql-инъекция связана с ними с помощью $_FILES["file"]["type"]. Таким образом, я начал следовать этой ссылке вместо этого из-за того, что я был из php, я, PHP-документация

Хорошо, чтобы понять, что у меня есть проблема с кодом, который у меня есть на данный момент, у меня есть простая форма, которая запускает 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>";

?>

любые идеи были бы высоко оценены или если кто-нибудь знает лучший пример для использования.

  • 0
    Вы должны проверить свой файл php.ini. не уверен, что вы запускаете код в WAMP / MAMP / XAMPP или на каком-либо сервере?
  • 0
    Проблема в том, что ваш файл php.ini, вероятно, установил меньший размер файла, чем файл, который вы пытаетесь загрузить.
Показать ещё 5 комментариев
Теги:
forms
file-upload

3 ответа

0
Лучший ответ

Максимальный размер файла может быть ограничен в PHP. В php.ini проверьте следующие свойства:

upload_max_filesize = 10M
post_max_size = 10M

Если он не изменится, вы также можете попробовать проверить ограничение памяти или максимальное время процесса.

  • 0
    Это не сработало. Что вы подразумеваете под проверкой ограничения памяти и максимального времени процесса?
  • 0
    Во-первых, вы перезапустили сервер PHP после изменения php.ini ? Ты должен.
Показать ещё 4 комментария
0

проверьте свой upload_max_filesize - 2M в файле php.ini

  • 0
    Я изменил upload_max_filesize и все еще не повезло, другие идеи?
0

Я не очень хорошо знаком с Windows Server, но немного искал Google и нашел этот документ:

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

надеюсь это поможет! :-)

  • 0
    в папке system32 нет папки с именем PHP, поэтому я немного застрял = /
  • 0
    а под вашей папкой windows есть файл php.ini?
Показать ещё 4 комментария

Ещё вопросы

Сообщество Overcoder
Наверх
Меню