Domanda

Ho bisogno di salvare un file caricato nel database preferibilmente nella tabella core_file_storage come Blob e recuperarlo in seguito.Voglio questo collegato a un cliente.Attualmente i file vengono salvati nel file system e questo deve essere interrotto.

risolto: Ho usato il modello Mage / Core / File / Model / Storage / database.php Metodi per scrivere nella tabella core_file_storage

È stato utile?

Soluzione

Non è sicuro del motivo per la cessione di memorizzazione dei file nel filesystem, memorizzando in dB non è raccomandato come il tuo DB diventerà enorme rapidamente.

Qual è lo schema della tabella?È possibile salvare i file BLOB ottenendo il contenuto dei file utilizzando la funzione PHP file_get_contents.

Prova qualcosa come questo, dopo aver sostituito di seguito con i tuoi dati reali:

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

e poi recupero:

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

// e da visualizzare in frontend ... Se un'immagine:

header("Content-type: image/jpg"); //Send the content Type here.
echo $blobFile;
.

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a magento.stackexchange
scroll top