Как разрешить пользователям загружать файл на сервер - PullRequest
0 голосов
/ 29 марта 2019

У меня есть страница, и я хочу, чтобы она позволяла пользователям загружать файл на мой сервер, чтобы я мог увидеть его позже. Я уже начал, но когда вы нажимаете кнопку Отправить, вы получаете 500 ошибок. Вот какой у меня код:

HTML:

<form action="uploadfile.php" enctype="multipart/form-data" method="POST">
Choose File: 
<input name="userfile" type="file">
<p></p>
<p class="section-content"><input type="submit" value="Upload File"></p>
</form>

PHP: (названный uploadfile.php)

<?php 
    $path = "files/"; $path = $path . basename( $_FILES['userfile']['name']);

    if(move_uploaded_file($_FILES['userfile']['tmp_name'], $path)) { 
        echo "Success uploading". basename($_FILES['userfile']['name']); 
    } else{ 
        echo "Error when uploading file."; 
    } 
?>

В HTML есть кнопка для выбора файла и одна для отправки. Кнопка отправки приводит вас к uploadfile.php, и это выглядит как 500 - внутренняя ошибка сервера. Обратите внимание, что он не просто говорит «Ошибка при загрузке файла», как это должно быть при возникновении ошибки. Я новичок в PHP, поэтому я не знаю, делаю ли я что-то совершенно неправильно, или, может быть, есть способ сделать это в Javascript, в котором я немного опытнее?

Заранее спасибо.

Редактировать: я пробовал 2 разных браузера (Chrome и Edge)

1 Ответ

0 голосов
/ 29 марта 2019

исправлена ​​

используйте $ _SERVER ['DOCUMENT_ROOT'] вместо basename ()

$path = $_SERVER['DOCUMENT_ROOT'].'/your root file name/files';
       $name = $_FILES['userfile']['name'];
       $tmp_name = $_FILES['userfile']['tmp_name'];

       move_uploaded_file($tmp_name, $path.'/'.$name);
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...