Getting arrays from a result set?

Поиск
Список
Период
Сортировка
От Louis Bertrand
Тема Getting arrays from a result set?
Дата
Msg-id Pine.BSO.4.20.0008272232090.13532-100000@grendel.bts
обсуждение исходный текст
Ответы Re: Getting arrays from a result set?  (The Hermit Hacker <scrappy@hub.org>)
Список 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@bertrandtech.on.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/


В списке pgsql-php по дате отправления:

Предыдущее
От: "Dan Wilson"
Дата:
Сообщение: phpPgAdmin 2.1 released!
Следующее
От: The Hermit Hacker
Дата:
Сообщение: Re: Getting arrays from a result set?