C'est normal puisque la fonction pg_query() renvoie une ressource de résultat, et pas directement un résultat.

Pour récupérer l'ID, il faudrai plutôt un code du genre:

$result=pg_query($sql);...