Re: Load Image from File to Store in ByteA Field

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]



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






[Index of Archives]     [Postgresql General]     [Postgresql Admin]     [PHP Users]     [PHP Home]     [PHP on Windows]     [Kernel Newbies]     [PHP Classes]     [PHP Databases]     [Yosemite Backpacking]     [Postgresql Jobs]

  Powered by Linux