I just did a test, and the following order works fine:
$conn=pg_connect ($conn_string);
$query=pg_exec ($conn, $sql_statement);
pg_close ($conn);
while($row=pg_fetch_row($query)){
//do something with the data
}
----- Original Message -----
Sent: Tuesday, August 26, 2003 3:16 PM
Subject: RE: [NOVICE] Using PostgreSQL with PHP / Scope an Lifetime of $result
As I remember, you should call pg_fetch_row before closing the connection. Like
$conn=pg_connect ($conn_string);
$query=pg_exec ($conn, $sql_statement);
$row=pg_fetch_row($query);
pg_close ($conn);
Then you can reference the $row[$i] in the resultset. If you try to reference the $query, it will try to execute it again. And with the connection closed, this would bomb out.
-----Original Message-----
From: Luis H. [mailto:pgsql-novice@geekhouse.no-ip.com]
Sent: Tuesday, August 26, 2003 11:52 AM
To: pgsql-novice@postgresql.org
Subject: Re: [NOVICE] Using PostgreSQL with PHP / Scope an Lifetime of $result
After you execute the pg_exec, the results are stored in $query and no longer have any direct reference to the database. So you can close the connection and still work with the query. I would assume you can return the $query and continue to work on it as long as you'd like.
----- Original Message -----
Sent: Monday, August 25, 2003 5:07 PM
Subject: [NOVICE] Using PostgreSQL with PHP / Scope an Lifetime of $result
Hi !
The following PHP-Code:
>> $conn
=pg_connect ($conn_string);
>> $query=pg_exec ($conn, $sql_statement); // it's pg_query for PHP >4.2.0
>> pg_close ($conn);
My question:
What's the scope and lifetime of the $query Resource ? Can I still use it after calling pg_close ? or do i have to copy all my rows, fields and stuff before calling pg_close.
Suppose I'd use the mentioned Code in a function wich will return $query as a result. Will the return value of the function still be valid and usable ?
Thanks for your help !
Martin
please reply to: mNO_SPAMartin_ziebart@web.de remove NO_SPAM to get the email adress