Re: Load Image from File to Store in ByteA Field - Mailing list pgsql-php

From Paul & Natalie T
Subject Re: Load Image from File to Store in ByteA Field
Date
Msg-id 401EE1F0.2030106@shentel.net
Whole thread Raw
In response to Re: Load Image from File to Store in ByteA Field  ("Cornelia Boenigk" <poppcorn@cornelia-boenigk.de>)
List 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
>
>
>
>



pgsql-php by date:

Previous
From: Gustavo Paixao
Date:
Subject: PG_CONNECT error
Next
From: "scott.marlowe"
Date:
Subject: Re: PG_CONNECT error