P
P
pavlusha12018-04-27 20:48:48
PHP
pavlusha1, 2018-04-27 20:48:48

Why are files not saved on the server?

<?php
  // ограничение размера файла
  $limit_size = 1*1024*1024; // 1 Mb
  // корректные форматы файлов
  $valid_format = array("jpeg", "jpg", "gif", "png", "pdf");
  // хранилище ошибок
  $error_array = array();
  // путь до нового файла
  $path_file = "files/";
  // имя нового файла
  $rand_name = md5(time() . mt_rand(0, 9999));

  // если есть отправленные файлы
  if($_FILES){
    // валидация размера файла
    if($_FILES["upload_file"]["size"] > $limit_size){
      $error_array[] = "Размер файла превышает допустимый!";
    }
    // валидация формата файла
    $format = end(explode(".", $_FILES["upload_file"]["name"]));
    if(!in_array($format, $valid_format)){
      $error_array[] = "Формат файла не допустимый!";
    }
    // если не было ошибок
    if(empty($error_array)){
      // проверяем загружен ли файл
      if(is_uploaded_file($_FILES["upload_file"]["tmp_name"])){
        // сохраняем файл
        move_uploaded_file($_FILES["upload_file"]["tmp_name"], $path_file . $rand_name . ".$format");
      }else{
        // Если файл не загрузился
        $error_array[] = "Ошибка загрузки!";
      }
    }		
  }
?>
<html>
<head>
  <meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
</head>
<body>
  <br/>
  <?php if(!empty($error_array)): ?>
    <span style="color: red;">Файл не загружен!</span><br/>
    <?php foreach($error_array as $one_error): ?>
      <span style="color: red;"><?=$one_error;?></span><br/>
    <?php endforeach; ?>
  <?php endif; ?>
  <?php if(empty($error_array) AND $_FILES): ?>
    <span style="color: green;">Файл успешно загружен!</span><br/>
  <?php endif; ?>
  <form action="/form/index.php" method="POST" enctype="multipart/form-data">
    <input type="file" name="upload_file"><br> 
    <input type="submit" value="Загрузить"><br>
  </form>
</body>
</html>
,
It works flawlessly on the hosting, on the physical server it says that the file is loaded, but it is not in the folder, what could be the reason?

Answer the question

In order to leave comments, you need to log in

1 answer(s)
T
Troodi Larson, 2018-04-27
@troodi

Rights checked?

Didn't find what you were looking for?

Ask your question

Ask a Question

731 491 924 answers to any question