Re: ByteA for binary data?
От | Thomas T. Thai |
---|---|
Тема | Re: ByteA for binary data? |
Дата | |
Msg-id | Pine.NEB.4.43.0202242137220.24987-100000@ns01.minnesota.com обсуждение исходный текст |
Ответ на | Re: ByteA for binary data? (Robert Myers <ccrider@whiterose.net>) |
Ответы |
Re: ByteA for binary data?
|
Список | pgsql-general |
On Sun, 24 Feb 2002, Robert Myers wrote: > I did this with the CVS version of PHP, v 4.2.0 dev. > > I downloaded it for the function pg_escape_bytea, still no go, I can't get > the data into the field. did you try as i said below? i've tested it on php 4.0.6 - 4.1.0. i've not used pg_escape_bytea so i can't comment on it. > > > I'm having a problem with the bytea datatype. I'm trying to store image > > > data inside the field in a table, and php seems to only be sending a small > > > portion of the image into the database. [...] > > to use bytea with php, encode the image data with escByteA() below before > > storing it in your db. then when you retrieve the data, use php's > > stripcslashes(). i've tested this on various image data and they all work > > just fine. > > > > function escByteA($binData) { > > /** > > * \134 = 92 = backslash, \000 = 00 = NULL, \047 = 39 = Single Quote > > * > > * str_replace() replaces the searches array in order. > > * Therefore, we must > > * process the 'backslash' character first. If we process it last, it'll > > * replace all the escaped backslashes from the other searches that came > > * before. tomATminnesota.com > > */ > > $search = array(chr(92), chr(0), chr(39)); > > $replace = array('\\\134', '\\\000', '\\\047'); > > $binData = str_replace($search, $replace, $binData); > > return $binData; > > }
В списке pgsql-general по дате отправления: