@michadimin

Как получить файл из формы с input type="file" в PHP или в целом получить файл любым способом?

Сам я мало шарю, а о том, что фотки принято загружать на сервер в виде файлов, а не хранить в БД - узнал вот только тогда, когда было уже слишком поздно...

Проблема состоит в том, что есть у меня форма регистрации пользователя, у пользователя есть и фотография профиля в том числе. Загрузку фотографии я хотел сделать через описанный в вопросе путь, но в таком случае в базу данных попадает только название файла, а не сам файл!

Сессии реализованы стандартными методами PHP - через session_start()

Вот ссылка на архив с кодом - https://disk.yandex.ru/d/4xTvCCh_ytflgg
Мне неохота городить тут тонну текста, ввиду того, что я не понимаю, где может крыться решение, а "компилировать в уме", как говорится, - дело то ещё.
  • Вопрос задан
  • 639 просмотров
Решения вопроса 1
cyber-jet
@cyber-jet
Массив файлов, передаваемых формой выводится в $_FILES, ключом является название поля, например input type="file" name="avatar", тогда чтобы получить путь к файлу из временной директории:
<?
$tmp_dir = '/var/www/uploads/'; // путь к временной директории из настроек php.ini
$tmp_file = $tmp_dir . basename($_FILES['avatar']['name']); // путь к временному файлу
?>

Дальше нужно переместить файл туда, где хотите хранить картинки на сервере, а путь записать в базу.

Инфа на php.net.
Ответ написан
Пригласить эксперта
Ответы на вопрос 1
delphinpro
@delphinpro Куратор тега PHP
frontend developer
https://www.php.net/manual/ru/function.move-upload...
Копируете загруженный файл в нужное место на своем сервере. В базу сохраняете его название и местоположение.
Подробнее https://www.php.net/manual/ru/features.file-upload...
И еще дофига инфы https://yandex.ru/search/?text=php+как+загрузить+файл
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы