Pergunta

Preciso salvar um arquivo carregado no banco de dados, de preferência na tabela core_file_storage como um blob e recuperá-lo mais tarde.Quero isso conectado a um cliente.Atualmente os arquivos estão sendo salvos no sistema de arquivos e isso precisa ser descontinuado.

Resolvido:Usei os métodos model mage/core/file/Model/storage/database.php para escrever na tabela core_file_storage

Foi útil?

Solução

Não sei por que você está interrompendo o armazenamento de arquivos no sistema de arquivos. Armazenar no banco de dados não é recomendado, pois seu banco de dados ficará enorme rapidamente.

Qual é o esquema da tabela?Você pode salvar arquivos blob obtendo o conteúdo do arquivo usando file_get_contents Função PHP.

Tente algo assim, depois de substituir abaixo pelos seus dados reais:

Mage::getModel('core/file_storage')
->setCustomerId($custId)
->setYourFile(file_get_contents('/path/to/file.ext'))
->save();

E então buscando:

Mage::getModel('core/file_storage')->load($custId);
$blobFile = $cust->getYourFile();

//E para exibir no frontend...se for uma imagem:

header("Content-type: image/jpg"); //Send the content Type here.
echo $blobFile;
Licenciado em: CC-BY-SA com atribuição
Não afiliado a magento.stackexchange
scroll top