@muxalich
PHP, ZEND, JS, PJAX, JQ, JQ UI, MySQL

Как лучше храненить файл до привязки его к бд?

Здравствуйте, есть форма с возможностью отправки текста и загрузки некоторого количества файлов, проблема заключается в том, что файлы загружаются на сервер, до нажатия кнопки отправки ( в форме, показывая тем самым превьюшки файлов ) в следствии чего id записи формы еще не создан, как лучше хранить эти файлы, чтобы после нажатия отправки прикрепить их к сообщению формы ?

Наиболее похожий способ загрузке в vk.com там загружаются фото, аудио, видео, до отправки сообщения.

На ум приходит пока 2 варианты:
1. Создавать заранее пустую запись для получения id и потом прикреплять загруженные файлы к уже созданному id-шнику, при нажатии кнопки отправить, записывать переданные данные и менять флаг в записи для ее публикации.
2. Временно хранить файлы в какой - либо папке, и записывать их в новую таблицу бд, где будут данные к какому новому сообщению относятся загруженные файлы... Новость, переписка и так далее...

Минусы:
1. Для каждой переписки с каждым человеком или для каждой новой новости будут созданы пустые строки в бд с неактивным флагом.
2. Создание новой таблицы бд. Так-же пользователь не сможет создать 'новую' запись, к любой записи уже будут прибиты превьюшки новостей. Пример. Писал новость А, затем решил отдохнуть или подобрать материал, и временно написать новость Б, но файлы будут привязаны к любой не опубликованной новости, будь то А или Б, до тех пор пока не будет нажата кнопка отправить и все файлы не привяжутся к какой-то конкретной новости...

Возможно, есть свои идеи ? Поделитесь, заранее спасибо.
  • Вопрос задан
  • 2386 просмотров
Решения вопроса 1
FanatPHP
@FanatPHP
Чебуратор тега РНР
Непонятна маниакальная тяга к таблицам.
Просто в сессию записать недостаточно?
Ответ написан
Пригласить эксперта
Ответы на вопрос 1
@p1rat495
Так сделай так же как в вк, после загрузки файла, добавь в форму что-то вроде
<input type="hidden" value="(Тип и ид загруженного файла)">

Далее, при отправки формы, привязывай файлы

P.S. Писал с телефона, возможны ошибки в записи
Ответ написан
Комментировать
Ваш ответ на вопрос

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

Войти через центр авторизации
Похожие вопросы
19 апр. 2024, в 05:01
999999 руб./за проект
19 апр. 2024, в 03:52
1000 руб./за проект
19 апр. 2024, в 03:01
1000 руб./за проект