<?php
include_once('functions.php')
?>
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>Загрузка изображений на сервер</title>
</head>
<body>
<form method="post" enctype="multipart/form-data">
<input type="file" name="file">
<input type="submit" value="Загрузить файл!">
</form>
<?php
// если была произведена отправка формы
if(isset($_FILES['file'])) {
// проверяем, можно ли загружать изображение
$check = can_upload($_FILES['file']);
if($check === true){
// загружаем изображение на сервер
make_upload($_FILES['file']);
echo "<strong>Файл успешно загружен!</strong>";
}
else{
// выводим сообщение об ошибке
echo "<strong>$check</strong>";
}
}
?>
</body>
</html><?php
function can_upload($file){
// если имя пустое, значит файл не выбран
if($file['name'] == '')
return 'Вы не выбрали файл.';
/* если размер файла 0, значит его не пропустили настройки
сервера из-за того, что он слишком большой */
if($file['size'] == 0)
return 'Файл слишком большой.';
// разбиваем имя файла по точке и получаем массив
$getMime = explode('.', $file['name']);
// нас интересует последний элемент массива - расширение
$mime = strtolower(end($getMime));
// объявим массив допустимых расширений
$types = array('jpg', 'png', 'gif', 'bmp', 'jpeg');
// если расширение не входит в список допустимых - return
if(!in_array($mime, $types))
return 'Недопустимый тип файла.';
return true;
}
function make_upload($file){
// формируем уникальное имя картинки: случайное число и name
$name = mt_rand(0, 10000) . $file['name'];
copy($file['tmp_name'], 'img/' . $name);
}