| 
	
 | 
 Posted by Colin Fine on 12/08/05 12:19 
David W wrote: 
> Hello, 
>  
> My goal : obtain the error message if the connection fail. 
>  
> ## my code : 
>  
> <?php 
>  
> $cnxString = "host=localhost port=5432 dbname=toto user=atlante 
> password=aiThoo3g"; 
>  
> $pgsql_conn = pg_connect($cnxString, PGSQL_CONNECT_FORCE_NEW); 
>  
> if ($pgsql_conn) { 
>   print "Connexion réussie à : " . pg_host($pgsql_conn) . "<br/>\n"; 
> } else { 
>   echo pg_last_notice($pgsql_conn); 
>   exit; 
> } 
> ?> 
>  
> ## if «php_value display_errors 1» the screen result is this one : 
>  
> Warning: pg_connect() [function.pg-connect]: Unable to connect to 
> PostgreSQL server: FATAL: la base de données «toto» n'existe pas in 
> /home/willou/public_html/atlanpolis/wwws/tools/checkdb.php on line 5 
>  
> Warning: pg_last_notice() expects parameter 1 to be resource, boolean 
> given in /home/willou/public_html/atlanpolis/wwws/tools/checkdb.php on 
> line 10 
>  
> ## If not, i haven't got any result. The message just appears in my 
> logs 
>  
> The return of pg_connect not seems to be an connection resource when 
> the connection fails. 
>  
> Thanks to help me to find the problem, 
> David. 
>  
 
I see you have posted the same question on:  
http://uk.php.net/manual/en/function.pg-connect.php: 
 
On that page, it says: 
================================================================== 
Return Values 
 
PostgreSQL connection resource on success, FALSE on failure. 
================================================================== 
 
I admit that it does not give an example about error handling. 
 
 
On http://uk.php.net/manual/en/function.pg-last-error.php, it says 
 
======================================================================== 
Parameters 
 
connection 
 
     PostgreSQL database connection resource. When connection is not  
present, the default connection is used. The default connection is the  
last connection made by pg_connect() or pg_pconnect(). 
======================================================================== 
 
which suggests that you can say 
 
if ($pgsql_conn) { 
   print "Connexion réussie à : " . pg_host($pgsql_conn) . "<br/>\n"; 
} else { 
   echo pg_last_notice(); 
   exit; 
} 
 
but I have not tried it. The example on that page does what you have  
done, which suggests that you have found a bug either in the code or in  
the documentation. 
 
 
Sorry I can't be more helpful 
 
Colin
 
  
Navigation:
[Reply to this message] 
 |