Задание по Php к пятому уроку

Автор: | 26.08.2015

Задание

1. Создать форму для загрузки изображений
2. Написать скрипт загрузки файла.
1. Создадим файл для нашей формы zagruzka.php. Его код:

 

<!DOCTYPE html>
<html>
<head>
<meta charset='utf-8'>
<title>My First PHP Page</title>
</head>
<body>

<form action="upload.php" method="post" enctype="multipart/form-data">
Выберете файл для загрузки:
<input type="file" name="fileToUpload" id="fileToUpload">
<input type="submit" value="Загрузить" name="submit">
</form>

</body>
</html>

И в файле index.php сделаем ссылку на zagruzka.php

<a href="zagruzka.php">Страница для загрузки файлов</a> <br />

И смотрим результат:

Untitled-1

рис 1

2. Код скрипта:

<?php
$target_dir = "uploads/"; //Задаем папку в которую загружается файл.
$target_file = $target_dir . basename($_FILES["fileToUpload"]["name"]); // исходное имя файла, такое
$uploadOk = 1;
$imageFileType = pathinfo($target_file,PATHINFO_EXTENSION); // Получаем расширение файла для проверки, что файл является картинкой
if(isset($_POST["submit"])) {
$check = getimagesize($_FILES["fileToUpload"]["tmp_name"]); // полный путь к временному файлу на диске
if($check !== false) {
echo "Файл является изображением - " . $check["mime"] . "";
$uploadOk = 1;
} else {
echo "Файл не является изображением или поврежден.";
$uploadOk = 0;
}
}
if (file_exists($target_file)) // проверяем существует ли файл
{
echo "Извините файл уже существует.";
$uploadOk = 0;
}
if ($_FILES["fileToUpload"]["size"] > 500000) // Проверим размер загруженного файла в байтах
{
echo "Файл слишком большой.";
$uploadOk = 0;
}
if($imageFileType != "jpg" and $imageFileType != "png" and $imageFileType != "jpeg" and $imageFileType != "gif" ) // если значение переменной $imageFileType не равно (!=) указанным расширениям то выводим сообщение
{
echo "Только JPG, JPEG, PNG & GIF можно загружать. Неверное расширение файла";
$uploadOk = 0;
}

if ($uploadOk == 0) {
echo "Ошибка загрузки файла.";
} else {
if (move_uploaded_file($_FILES["fileToUpload"]["tmp_name"], $target_file)) // Перемещаем файл на сервер
{
echo "Файл ". basename( $_FILES["fileToUpload"]["name"]). " загружен.";
} else {
echo "Ошибка копирования файла.";
}
}
?>