Re: Aw: Re: Storing binary data in mySQL

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Next question then - how did you read the file's contents into a variable before encoding it?


Ask since, base64_encode requires a string parameter, and, if I read the files in using fopen($s_file_name, "rb"), then it returns a resource, whereas if I use file_get_contents, to read the audio clips contents in as a string, and then encode them, they still get decoded as a corrupted version, most likely due to reading in binary data the wrong way?


TIA


Jacob Kruger
Blind Biker
Skype: BlindZA
"Resistance is futile, but, acceptance is versatile..."

On 2016-10-26 11:31 AM, Sascha Meyer wrote:
Hi Jacob,

I had a lot of problems storing files properly inside databases (mainly with MSSQL rather than MySQL), I ended up using base64_encode() (http://php.net/manual/de/function.base64-encode.php) before saving the file and than re-decoding the files with base64_decode on download. If combined with proper MIME type detection (stored alongside with the base64-encoded content, there were no problems with various file types.

Just my idea, perhaps it'll help.

Good luck!

Best, Sascha

Gesendet: Mittwoch, 26. Oktober 2016 um 10:42 Uhr
Von: "Jacob Kruger" <jacob@xxxxxxxxxxxxx>
An: "php-windows@xxxxxxxxxxxxx" <php-windows@xxxxxxxxxxxxx>
Betreff: Re:  Storing binary data in mySQL

Ok, the primary issue seems to be with just one file type - .wav - I
rewrote the code a bit, working with just PDO, making sure it was all
doing what I wanted it to do, and it works fine with .mp3 and .ogg audio
clips, but, .wav still gets corrupted, so my guess would be that some
form of encoding, or something is causing hassles - this database is set
to use inno DB and UTF-8, but anyway.


Either way, for now, will just limit audio clips to those two file
formats, and take it from there.


Stay well


Jacob Kruger
Blind Biker
Skype: BlindZA
"Resistance is futile, but, acceptance is versatile..."

On 2016-10-25 9:58 AM, Jacob Kruger wrote:
I have a minor issue with storing specific types of data in a blob
field in mySQL.


I am working with PDO, and while it seems to work alright with image
files, etc., if I try to store a sound clip in the database, using
exact same code, etc., when I then pull the data out of the database
again, setting content-disposition, file name, content-type, etc. back
to match the original values, the audio clips seem to get corrupted
when being extracted?


Any thoughts on what I need to bear in mind/try while extracting, or
storing the data?


Can also post the code here, but, thought would first just ask, since
when I do the exact same thing with image files, they seem fine when
they then get extracted/rendered.


Suppose should also try some other file types, like documents, PDF
files, etc., just to test, but, just find it a bit odd that one type
of file - .jpg, .gif, or .png - works fine, but, others, like .wav,
.mp3 and .ogg don't want to cooperate.


TIA


Jacob Kruger
Blind Biker
Skype: BlindZA
"Resistance is futile, but, acceptance is versatile..."



--
PHP Windows Mailing List (http://www.php.net/)
To unsubscribe, visit: http://www.php.net/unsub.php





--
PHP Windows Mailing List (http://www.php.net/)
To unsubscribe, visit: http://www.php.net/unsub.php




[Index of Archives]     [PHP Home]     [PHP Users]     [PHP Database Programming]     [PHP Install]     [Kernel Newbies]     [Yosemite Forum]     [PHP Books]

  Powered by Linux