Re: Load Image from File to Store in ByteA Field

From: Paul & Natalie T <pntil(at)shentel(dot)net>
To: pgsql-php(at)postgresql(dot)org
Subject: Re: Load Image from File to Store in ByteA Field
Date: 2004-02-02 23:49:04
Message-ID: 401EE1F0.2030106@shentel.net
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-php

Any modern version of PHP which has pg_ specific functions can do it
like this:

$string = pg_escape_bytea(file_get_contents($filename));
pg_query("INSERT INTO TABLE pictures (picture_bytea) VALUES
('$string');");

I prefer to use pg_escape() rather than code my own escape.

Paul

>Hi
>
>
>
>>How to Load Image from File to Store in ByteA Field?
>>
>>
>This is the way I store images with PHP. The column bild has the
>datatype bytea.
>
>function esc_bytea($imagedata) {
> $finde = array(chr(92), chr(0), chr(39));
> $ersetze = array('\\\134', '\\\000', '\\\047');
> $esc = str_replace($finde[0], $ersetze[0], $imagedata);
> $esc = str_replace($finde[1], $ersetze[1], $esc);
> $esc = str_replace($finde[2], $ersetze[2], $esc);
> return $esc;
>}
>
> $fp = fopen($imagefile,"r");
> $contents = fread($fp, filesize($imagefile));
> fclose($fp);
> $esc_daten = esc_bytea($contents);
>
> $sql = "INSERT INTO byteatest (bild, name, size, typ, htmlstr) ";
> $sql .= "values ('$esc_daten', '$name', $size, '$typ',
>'$htmlstr');";
> $res = @pg_exec($sql) or die ("Fehler bei der
>Datenbankabfrage.");
>
>Regards
>Conni
>
>
>---------------------------(end of broadcast)---------------------------
>TIP 8: explain analyze is your friend
>
>
>
>

In response to

Responses

Browse pgsql-php by date

  From Date Subject
Next Message scott.marlowe 2004-02-02 23:53:52 Re: PG_CONNECT error
Previous Message Gustavo Paixao 2004-02-02 23:29:57 PG_CONNECT error