95am.ru

Технологии проще, новинки ближе, идеи ярче!

Advertisement

PHP | Отправка файлов на сервер

<!DOCTYPE html>
<html lang=”ru”>
<head>
    <meta charset=”UTF-8″>
    <meta name=”viewport” content=”width=device-width, initial-scale=1.0″>
    <title>Загрузка файла</title>
</head>
<body>
    <h1>Форма для загрузки файла</h1>
    <form action=”upload.php” method=”post” enctype=”multipart/form-data”>
        <label for=”fileToUpload”>Выберите файл для загрузки:</label>
        <input type=”file” name=”fileToUpload” id=”fileToUpload”>
        <br>
        <input type=”submit” value=”Загрузить файл” name=”submit”>
    </form>
</body>
</html>

<?php
if ($_SERVER[‘REQUEST_METHOD’] == ‘POST’) {
    // Указываем папку для хранения загруженных файлов
    $targetDirectory = “uploads/”;
    $targetFile = $targetDirectory . basename($_FILES[“fileToUpload”][“name”]);
    $uploadOk = 1;
    $imageFileType = strtolower(pathinfo($targetFile, PATHINFO_EXTENSION));
    // Проверка, является ли файл изображением (можно изменить под другие типы файлов)
    if (isset($_POST[“submit”])) {
        $check = getimagesize($_FILES[“fileToUpload”][“tmp_name”]);
        if ($check !== false) {
            echo “Файл – это изображение ” . $check[“mime”] . “.<br>”;
            $uploadOk = 1;
        } else {
            echo “Файл не является изображением.<br>”;
            $uploadOk = 0;
        }
    }
    // Проверка на наличие файла
    if (file_exists($targetFile)) {
        echo “Извините, файл с таким именем уже существует.<br>”;
        $uploadOk = 0;
    }
    // Ограничение на размер файла (например, 5 МБ)
    if ($_FILES[“fileToUpload”][“size”] > 5000000) {
        echo “Извините, файл слишком большой.<br>”;
        $uploadOk = 0;
    }
    // Разрешенные типы файлов (например, jpg, png, jpeg, gif)
    if ($imageFileType != “jpg” && $imageFileType != “png” && $imageFileType != “jpeg” && $imageFileType != “gif”) {
        echo “Извините, только файлы форматов JPG, JPEG, PNG и GIF разрешены.<br>”;
        $uploadOk = 0;
    }
    // Проверка, если $uploadOk равен 0, то файл не будет загружен
    if ($uploadOk == 0) {
        echo “Извините, файл не был загружен.<br>”;
    } else {
        // Попытка загрузить файл
        if (move_uploaded_file($_FILES[“fileToUpload”][“tmp_name”], $targetFile)) {
            echo “Файл ” . htmlspecialchars(basename($_FILES[“fileToUpload”][“name”])) . ” был загружен.<br>”;
        } else {
            echo “Извините, произошла ошибка при загрузке файла.<br>”;
        }
    }
}
?>

СКАЧАТЬ КОД

Leave a Reply

Your email address will not be published. Required fields are marked *