Страницы

Поиск по вопросам

понедельник, 1 апреля 2019 г.

Загрузка изображений в папку на сервер и помещение информации в базу данных

Здравствуйте. Как можно сделать загрузку изображений со страницы сайта на сервер в определённую папку, и чтобы название файла заносилось в базу данных?


Ответ

Отложим в сторону всякие проверки, их вы сделаете сами и какие хотите (и файл ли это, и доступные расширения файлов, и прочее). Вам надо определиться, с каким именем будете сохранять файл, т.к. если его не переименовать, то может случиться так, что будет загружен файл с таким же именем, как у файла загруженного раньше. Это приведет к перезаписи существующего файла. Для примера, будем задавать новое имя в зависимости с текущей меткой времени Unix. Теперь к сути: $path = 'path_to_dir/'; // директория для загрузки $ext = array_pop(explode('.',$_FILES['myfile']['name'])); // расширение $new_name = time().'.'.$ext; // новое имя с расширением $full_path = $path.$new_name; // полный путь с новым именем и расширением
if($_FILES['myfile']['error'] == 0){ if(move_uploaded_file($_FILES['myfile']['tmp_name'], $full_path)){ // Если файл успешно загружен, то вносим в БД (надеюсь, что вы знаете как) // Можно сохранить $full_path (полный путь) или просто имя файла - $new_name } } P.S. Поле файла в форме для моего примера, должно иметь атрибут name="myfile". Замените на своё значение, соответственно изменив в глобальной переменной $_FILES['myfile']

Комментариев нет:

Отправить комментарий