Проблема с загрузкой файла из локальной файловой системы на php сервер - PullRequest
0 голосов
/ 19 мая 2018

Я пытаюсь загрузить файл из локальной файловой системы на удаленный сервер с помощью php.

Я использую функцию move_uploaded_file, но когда я выбираю файл в локальной файловой системе, он пытается найти файл вудаленный сервер и, следовательно, не удается.может я что-то упустил.Допустим, я пытаюсь загрузить файл из C: \ Data \ abc.txt.Он пытается найти файл в /server/abc.txt и, следовательно, не может загрузить файл.Пожалуйста, дайте мне знать, если я что-то упустил.

<?
    if(isset($_FILES['image'])){
        $errors= array();
        $file_name = $_FILES['image']['name'];
        $file_size =$_FILES['image']['size'];
        $file_tmp =$_FILES['image']['tmp_name'];
        $file_type=$_FILES['image']['type'];
        $original = $root_path .$file_name; 

        echo $_FILES['image']['tmp_name'];

        if($file_size > 100097152){
            $errors[]='File size must be less than 100 MB';
        }

        if(empty($errors)==true){
            move_uploaded_file($file_tmp, '/uploads');
            echo "Success";
        }else{
            print_r($errors);
        }
    } 
?>
<html>
   <body>

      <form action="" method="POST" enctype="multipart/form-data">
         <input type="file" name="image" />
         <input type="submit"/>
      </form>

   </body>
</html>

Ответы [ 3 ]

0 голосов
/ 20 мая 2018

Не знаю, правильно ли я вас понял, но вы подразумеваете под удаленным сервером свой веб-сервер?Этот сервер не имеет прямого доступа к вашей файловой системе из-за режима песочницы вашего браузера.Он получает только отправленный файл, исходный путь не имеет значения.

Второй параметр функции move_uploaded_file должен быть целевым файлом, а не целевым словарем.

Пример:

move_uploaded_file($file_tmp, '/uploads/' . $file_name);
0 голосов
/ 20 мая 2018

может помочь в использовании отчетов об ошибках / статусе в $ _FILES ['image'] ['error'] - дает отзыв о коде ошибки / статуса загрузки вашего файла, чтобы вы могли лучше понять, каков источник проблемывозможно:

0 = success
1 = file too big (php.ini set)
2 = file too big (max file size directive)
4 = no file was uploaded
6 = no access to temp folder on server
7 = file could not be written to server
8 = upload stopped by a php extension

надеюсь, что поможет

0 голосов
/ 20 мая 2018

затруднительно ответить, пожалуйста, скажите мне версию php и подсказку: вы проверили is_uploaded_file () php.net/manual/function.is-uploaded-file.php

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...