Задать вопрос
@pavlusha1

Почему не сохраняются файлы на сервере?

<?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>
,
На хостинге работает безупречно, на физическом сервере пишет что файл загружен, но в папке его нет, в чем может быть причина?
  • Вопрос задан
  • 218 просмотров
Подписаться 1 Простой 1 комментарий
Пригласить эксперта
Ответы на вопрос 1
Права проверили?
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы