Загрузка файла вставка в базу данных - PullRequest
0 голосов
/ 10 августа 2011

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

Я настроил базу данных с помощью.

   TABLE - tracks
    track_name
    track_bpm
    track_rate
    track_ref
    track_special
    track_file // This is where i need the uploaded file to go

Я застрял в процессе, вот где я так далеко. http://html5up.users35.interdns.co.uk/

Я смотрю, как вы выполняете стиль трубки, заполняя форму при загрузке вашего файла, размер файла может быть до 2 гигабайт, затем вставьте файл после завершения в сеанс, идентификатор здесь - фрагмент моего файла-upload.php

mysql_query("UPDATE tracks SET track_file = '".$file_name."'
WHERE session_id = '".$_SESSION['id']."'");

Может кто-нибудь, пожалуйста, помогите мне с правильным процессом или хотя бы приличным учебником или способом сделать это правильно, Googling целую вечность.

Является ли передача идентификатора сеанса правильным способом сделать это?

Любая помощь, пожалуйста, всем

Ответы [ 2 ]

1 голос
/ 10 августа 2011

Советы:

  1. mysql_ * функции скоро будут устаревшими, используйте PDO или mysqli
  2. Не храните файлы в базе данных, старайтесь хранить только пути кфайлы.
  3. Узнайте, как санировать SQL-запросы.
0 голосов
/ 10 августа 2011

Вы можете хранить свои файлы в базе данных (см. Зачем хранить двоичные данные в MySQL? ), в MySQL, что делается в поле BLOB .

Вы вставляете данные в таблицу, читая их из загруженного файла, а затем отправляете эти данные в базу данных с помощью стандартного запроса SQL.

В Интернете доступно множество учебных пособий, одно из которых Загрузка файлов в базу данных MySQL .

Если вы храните файл на диске, то просто сохраните файл на диске. Просто позаботьтесь о том, чтобы вставка / обновление / удаление данных в базе данных были атомарными с операцией над файлом (создание файла / обновление; переименование / удаление).

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...