Re: ByteA for binary data?

From: "Thomas T(dot) Thai" <tom(at)minnesota(dot)com>
To: Robert Myers <ccrider(at)whiterose(dot)net>
Cc: pgsql-general(at)postgresql(dot)org
Subject: Re: ByteA for binary data?
Date: 2002-02-25 03:39:50
Message-ID: Pine.NEB.4.43.0202242137220.24987-100000@ns01.minnesota.com
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: 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;
> > }

In response to

Responses

Browse pgsql-general by date

  From Date Subject
Next Message Robert Myers 2002-02-25 03:39:51 Re: ByteA for binary data?
Previous Message Robert Myers 2002-02-25 03:37:48 Re: ByteA for binary data?