Getting arrays from a result set?

From: Louis Bertrand <louis(at)bertrandtech(dot)on(dot)ca>
To: pgsql-php(at)postgresql(dot)org
Subject: Getting arrays from a result set?
Date: 2000-08-28 03:15:11
Message-ID: Pine.BSO.4.20.0008272232090.13532-100000@grendel.bts
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-php

Hello,

I am trying to save an array of strings in a column, but I can't figure
out how to retrieve it from within PHP3. What I'm hoping to accomplish is
to store a sequence of update SQL statements resulting from a posted form,
then output a Confirm (Yes/No) form. If the user clicks Yes, I retrieve
the SQL statements from the session table and execute them in a
transaction.

I added the column:
alter table sessions add column pending varchar(240)[];

db=> \d sessions
| pending | varchar[] | var |

I insert the strings with:
db=> update sessions set pending = '{ \'blah\', \'blorg\'}' where
sessionid = 'f38ca9c5f28fd13bd9619b13b5d8f2fc';
UPDATE 1

Then the select:
db=> select pending from sessions where sessionid =
'f38ca9c5f28fd13bd9619b13b5d8f2fc';
{" 'blah'","'blorg'"}
(1 row)

Then I do the following PHP code:
$selectsql = "SELECT pending"
." FROM sessions WHERE"
." sessionid = '$SessionID'";
$result = @pg_Exec( $conn, $selectsql);
if( $result && ( pg_NumRows($result) > 0)) {
$transactions = pg_Result( $result, 0, "pending");
echo "<br>pending=" . $transactions;
}
else {
echo "<br>No transactions";
} }

This is what I get:
pending={" 'blah'","'blorg'"}

I suppose I can always tokenize and parse the string, but I'm hoping there
is a classier way around this. I'm afraid of using temporary tables
because I don't want them cluttering the database when users abandon their
sessions.

Using PHP3.0.16 and PostgreSQL 6.5.2 on OpenBSD (no, I haven't had time to
upgrade yet).

Any thoughts?

Thanks
--Louis <louis(at)bertrandtech(dot)on(dot)ca>

Louis Bertrand http://www.bertrandtech.on.ca/
Bertrand Technical Services, Bowmanville, ON, Canada
Tel: +1.905.623.1500 Fax: +1.905.623.3852

OpenBSD: Secure by default. http://www.openbsd.org/

Responses

Browse pgsql-php by date

  From Date Subject
Next Message Louis Bertrand 2000-08-28 03:30:28 Re: Getting arrays from a result set?
Previous Message The Hermit Hacker 2000-08-28 03:12:07 Re: Getting arrays from a result set?