O erro é lançado pelo PostgreSQL, mas é uma mensagem para o cliente. Neste caso, seu script PHP. Este script tenta obter algumas informações que não estão lá.
Na lista de discussão :
The above error happens if a program calls PQgetvalue(), PQgetlength(), or PQgetisnull() with a row number of -1 and if there were no rows in the result.
O seu script sempre verifica o conjunto de resultados antes de fazer algo com o conjunto de resultados?