function uploadGalleryImage($config) { // проверка массива $_POST $descr = ''; if (!empty($_POST)) { $descr = isset($_POST['descr']) ? $_POST['descr'] : ''; } // если файл загружен if (is_uploaded_file($_FILES['image']['tmp_name'])) { if (typeIsImage($_FILES['image']['type'])) { if (move_uploaded_file($_FILES['image']['tmp_name'], $config['files']['galleryDir'] . '/' . basename($_FILES['image']['name']))) { // подготовка массива для записи в БД $newImage = ['file' => basename($_FILES['image']['name']), 'descr' => $descr]; // работа с бд if (addImage($newImage, $config)) { return true; } } } // если файл не загружен } else { return false; } }
<?php // проверка типа файлов - что у нас изображение function typeIsImage($str) { return 'image' == substr($str, 0, 5) ? true : false; } // загрузка файлов $uploadDir = __DIR__ . '/gallery_files/'; $displayDir = '/lesson6dz/gallery_files/'; $newName = $uploadDir . basename($_FILES['image']['name']); if (is_uploaded_file($_FILES['image']['tmp_name'])) { if (typeIsImage($_FILES['image']['type'])) { $res = move_uploaded_file($_FILES['image']['tmp_name'], $newName); echo 'Файл ' . basename($_FILES['image']['name']) . ' успешно загружен.'; } else { echo 'Детектирована попытка загрузить файл, отличный от изображения. Попытка пресечена.'; unset($_FILES); } } ?> <!--Загрузка файлов на сервер - форма--> <form method="post" enctype="multipart/form-data"> <input type="file" name="image"> <input type="submit"> </form> <!--Вывод галереи изображений-->