Received: from maia.hub.org (maia-1.hub.org [200.46.208.211]) by mail.postgresql.org (Postfix) with ESMTP id 788BE63FCCD for ; Tue, 18 May 2010 18:29:57 -0300 (ADT) Received: from mail.postgresql.org ([200.46.204.86]) by maia.hub.org (mx1.hub.org [200.46.208.211]) (amavisd-maia, port 10024) with ESMTP id 05539-03 for ; Tue, 18 May 2010 21:29:44 +0000 (UTC) X-Greylist: domain auto-whitelisted by SQLgrey-1.7.6 Received: from mail-wy0-f174.google.com (mail-wy0-f174.google.com [74.125.82.174]) by mail.postgresql.org (Postfix) with ESMTP id 1FA7A636FD3 for ; Tue, 18 May 2010 18:29:44 -0300 (ADT) Received: by wyb39 with SMTP id 39so1761116wyb.19 for ; Tue, 18 May 2010 14:29:43 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=gamma; h=domainkey-signature:received:received:message-id:date:from :user-agent:mime-version:to:subject:content-type; bh=lNNcfsGr/2VWLkdOEG/qp01rTzJXQZng8xEifF6kSh4=; b=QKoKtbfow7nqx3vsECIPOW3+zDcJm1F2byVzSgvim1WqdJDeG4XTmGvO/M5bG09kyh tHCbqWoyi2eKxywhdyEROvFSd1sbimHwu+ClmHHKi26o/EC8Q3enTxCGD5xNkNp3Lpum lasd+LOt/vpPAUADzYv1/zYEgowRi8rEXwC8E= DomainKey-Signature: a=rsa-sha1; c=nofws; d=gmail.com; s=gamma; h=message-id:date:from:user-agent:mime-version:to:subject :content-type; b=imsRu6jl7/16LExpQeU/+dGvGcovm9spadYsyrsOFz4CsdaGUMl76W2Rllhg2Vgdv4 LRmh/KHU+r/jRZ1QiKqR/7o9ceBEWkD4agDi6EfSdSOeHS6WO3rDbABhaClH0MR0bxB8 YnCNdgBnNG5e+zYRLmF+fXcxdm3pkjq6QDNL4= Received: by 10.216.87.68 with SMTP id x46mr4461423wee.145.1274218183189; Tue, 18 May 2010 14:29:43 -0700 (PDT) Received: from [192.168.1.4] (bzq-84-109-195-101.red.bezeqint.net [84.109.195.101]) by mx.google.com with ESMTPS id n61sm2720906wed.6.2010.05.18.14.29.41 (version=SSLv3 cipher=RC4-MD5); Tue, 18 May 2010 14:29:42 -0700 (PDT) Message-ID: <4BF306C4.8050101@gmail.com> Date: Wed, 19 May 2010 00:29:40 +0300 From: David Harel User-Agent: Mozilla/5.0 (X11; U; Linux i686; en-US; rv:1.9.1.9) Gecko/20100423 Thunderbird/3.0.4 MIME-Version: 1.0 To: postgres sql Subject: plperlu user function. Content-Type: multipart/alternative; boundary="------------040302070202080209070706" X-Virus-Scanned: Maia Mailguard 1.0.1 X-Spam-Status: No, hits=0.811 tagged_above=-5 required=5 tests=BAYES_50=0.8, HTML_MESSAGE=0.001, T_FILL_THIS_FORM_SHORT=0.01 X-Spam-Level: X-Archive-Number: 201005/81 X-Sequence-Number: 34129 This is a multi-part message in MIME format. --------------040302070202080209070706 Content-Type: text/plain; charset=ISO-8859-1; format=flowed Content-Transfer-Encoding: 8bit Greetings, I am trying to write a user function on the server to retrive image files. Currently I wrote the following: CREATE OR REPLACE FUNCTION perl_getfile(text) RETURNS OID AS $BODY$ my $tmpfile = shift; open my $IFHAND, '<', $tmpfile or elog(ERROR, qq{could not open the file "$tmpfile": $!}); binmode $IFHAND; my $result = ''; while(my $buffer = <$IFHAND>) { $result .= $buffer; } return $result; $BODY$ LANGUAGE 'plperlu'; on the client I do (PHP sniplet): $result = pg_query($dbcnx, "SELECT perl_getfile('/home/harel/Misc/At_work.jpg')"); and I get an error: Warning: pg_query() [function.pg-query ]: Query failed: ERROR: invalid input syntax for type oid: "ÿØÿà" in /home/harel/Prj/php/testImages/mysqlImage1/image.php Any recommendation how to do it right? -- Regards. David Harel, ================================== Home office +972 77 7657645 Cellular: +972 54 4534502 Snail Mail: Amuka D.N Merom Hagalil 13802 Israel Email: hareldvd@ergolight-sw.com --------------040302070202080209070706 Content-Type: text/html; charset=ISO-8859-1 Content-Transfer-Encoding: 7bit Greetings,

I am trying to write a user function on the server to retrive image files. Currently I wrote the following:
CREATE OR REPLACE FUNCTION perl_getfile(text)
  RETURNS OID AS
$BODY$
    my $tmpfile = shift;
    open my $IFHAND, '<', $tmpfile
        or elog(ERROR, qq{could not open the file "$tmpfile": $!});
    binmode $IFHAND;
    my $result = '';
    while(my $buffer = <$IFHAND>)
    {
    $result .= $buffer;
    }
    return $result;
$BODY$
  LANGUAGE 'plperlu';

on the client I do (PHP sniplet):
$result = pg_query($dbcnx, "SELECT perl_getfile('/home/harel/Misc/At_work.jpg')");

and I get an error:
Warning: pg_query() [function.pg-query]: Query failed: ERROR: invalid input syntax for type oid: "ÿØÿà" in /home/harel/Prj/php/testImages/mysqlImage1/image.php

Any recommendation how to do it right?

-- 
Regards.

David Harel,

==================================

Home office +972 77 7657645
Cellular:   +972 54 4534502
Snail Mail: Amuka
            D.N Merom Hagalil
            13802
            Israel
Email:      hareldvd@ergolight-sw.com

--------------040302070202080209070706--