Salva il file nel database
-
12-12-2019 - |
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
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;
.