From: | Félix Sánchez Rodríguez <fesanch(at)ciego(dot)cult(dot)cu> |
---|---|
To: | <pgsql-admin(at)postgresql(dot)org> |
Cc: | "Andy Shellam" <andy-lists(at)networkmail(dot)eu> |
Subject: | Re: Getting image from a DB |
Date: | 2009-05-08 21:11:03 |
Message-ID: | 002201c9d021$d186a450$3000a8c0@atenea |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Thread: | |
Lists: | pgsql-admin |
Well, using pg_unescape_bytea I was able to get the image. How can I stream
it directly to the users's browser??
----- Original Message -----
From: "Andy Shellam" <andy-lists(at)networkmail(dot)eu>
To: "Félix Sánchez Rodríguez" <fesanch(at)ciego(dot)cult(dot)cu>
Cc: <pgsql-admin(at)postgresql(dot)org>
Sent: Friday, May 08, 2009 8:26 AM
Subject: Re: [ADMIN] Getting image from a DB
> Hi Felix,
>
> I've not written an image specifically, but I have read/written byte data
> which is all an image is.
>
> Your PostgreSQL database column that holds the image should be of type
> "bytea." Your PHP application must then use the following functions:
>
> Writing to the database - http://uk2.php.net/pg_escape_bytea
> Reading from the database -
> http://uk2.php.net/manual/en/function.pg-unescape-bytea.php
>
> Once you have unescaped the bytea data, you should then have your valid
> set of bytes (your image) which you can either write to a temporary file
> or stream directly to the user's browser from your application.
>
> Regards,
> Andy
>
> Félix Sánchez Rodríguez wrote:
>> Hi:
>> Has anybody here had to capture an image from a PostgreSQL Data Base
>> using PHP?? I used a simple query: select photo from people where id = 3,
>> for instance. The problem is that when I write the image to disk it's not
>> a valid image. I opened it using an HEX editor and saw that the question
>> is that for each "strange" character, like ÿ, it writes, for instance,
>> \377, it is, the "\" symbol plus the character's numeric code. I guessed
>> that there were some function for this situation but I couldn't find it.
>> If you can't help me, I'll have to parse the whole image contents, with
>> the subsequent performance impact.
>> PD: The image field is of type bytea,as you recommend me.
>
From | Date | Subject | |
---|---|---|---|
Next Message | Chris Browne | 2009-05-08 22:27:10 | Re: How to run PostgreSQL? |
Previous Message | Kasia Tuszynska | 2009-05-08 20:25:06 | testing 8.4 |