false No rows returned error

Поиск
Список
Период
Сортировка
От Jim Martinez
Тема false No rows returned error
Дата
Msg-id Pine.LNX.4.33.0203230955120.7406-100000@unagi.e-techservices.com
обсуждение исходный текст
Ответы Re: false No rows returned error  (Tom Lane <tgl@sss.pgh.pa.us>)
Re: false No rows returned error  ("Dan Langille" <dan@langille.org>)
Список pgsql-sql
I am getting a No rows returned error from a php script when there are
rows.

I can cut and paste the sql statement in the error message into psql and
the query returns 17 rows (which is correct).  But why doesn't the result
set in php seem to have any rows?

There are no errors in the apache logs and I don't have access to the 
posgtres log file.

I'm using postgreSQL 7.1.3, apache 1.3.22, php 4.0.6 running on a 2.4.7-10 
linux kernel.

Below is a code snippet (some lines wrapped, sorry).

Thanks in Advance,
Jim

<?
$conn=pg_connect("user=scott");

// make sure I'mconnecting to the correc db
echo "<b>database name:". pg_dbname($conn)."</b></hr>\n";

if (!$conn){       exit(" connection failed: " . __FILE__ . __LINE__ . "error: " .        pg_errormessage($conn) );
}

$sql = "select pin, last_section_completed, comment from demographics";

$res = pg_exec($conn, $sql) || exit ("query failed: ".__FILE__ . __LINE__ 
."<br> sql is $sql" );

if (!$res){ exit ("post query check failed");}

// 
// script dies here (line 36), falling to the exit clause.
// A warning is printed also : 
// Warning: Supplied argument is not a valid 
// PostgreSQL result resource 
// in /home/www/test/php_debug.php on line 36

$rows = pg_numrows($res) || exit ("No rows returned ".__FILE__ ." line:". 
__LINE__ . "<br> sql is $sql" ); // line 36

echo "<table>\n";
for($i=0;$i<$rows;$i++){
       echo "<tr>\n";       $pin = pg_results($res,$i,'pin');       $section = pg_results($res, $i,
'last_section_completed');      $comment = pg_results($res, $i, 'comment');       $filler = pg_results($res, $i,
'filler');      echo "<td> $pin </td><td> $section </td><td> $comment</td>";       echo "<td> $filler </td>\n";
echo"</tr>\n";
 
}
echo "</table>";





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

Предыдущее
От: Richard Huxton
Дата:
Сообщение: Re: How to return more than one variable from PgPlSQL procedure?
Следующее
От: Tom Lane
Дата:
Сообщение: Re: false No rows returned error