Сохранить файл в базу данных
-
12-12-2019 - |
Вопрос
Мне нужно, чтобы сохранить загруженный файл в базу данных, предпочтительно в таблице Core_file_Storage в качестве капли и восстановить его позже.Я хочу, чтобы это связано с клиентом.В настоящее время файлы сохраняются в файловой системе, и это необходимо прекратить.
<Сильные> Решено: Я использовал модель Mage / Core / File / Model / Storage / Database.php Методы для записи в таблицу Core_file_Storage
Решение
Не уверены, что вы прекращаете хранение файлов в файловой системе, хранение в БД не рекомендуется, поскольку ваша БД быстро будет огромна.
Что такое таблица схемы?Вы можете сохранить файлы BLOB, получая содержимое файла, используя функцию PHP file_get_contents
.
Попробуйте что-то вроде этого, после замены ниже ваших реальных данных:
Mage::getModel('core/file_storage')
->setCustomerId($custId)
->setYourFile(file_get_contents('/path/to/file.ext'))
->save();
.
а затем выбирает:
Mage::getModel('core/file_storage')->load($custId);
$blobFile = $cust->getYourFile();
.
// и дисплей в интерфейсе ... Если изображение:
header("Content-type: image/jpg"); //Send the content Type here.
echo $blobFile;
.