Re: Getting arrays from a result set?
От | The Hermit Hacker |
---|---|
Тема | Re: Getting arrays from a result set? |
Дата | |
Msg-id | Pine.BSF.4.21.0008280011380.564-100000@thelab.hub.org обсуждение исходный текст |
Ответ на | Getting arrays from a result set? (Louis Bertrand <louis@bertrandtech.on.ca>) |
Ответы |
Re: Getting arrays from a result set?
|
Список | pgsql-php |
why not insert multiple records instead, serialized for order? On Sun, 27 Aug 2000, Louis Bertrand wrote: > 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/ > > Marc G. Fournier ICQ#7615664 IRC Nick: Scrappy Systems Administrator @ hub.org primary: scrappy@hub.org secondary: scrappy@{freebsd|postgresql}.org
В списке pgsql-php по дате отправления: