phpPgAdmin FAQ -------------- ERRORS ------ Q: I've installed phpPgAdmin but when I try to use it I get an error message telling me that I have not compiled proper database support into my PHP installation. A: This means that you have not properly compiled PostgreSQL support into your PHP. The correct configure flag to use is '--with-pgsql'. Read the PHP manual and website for more help with this. PostgreSQL support can be also compiled into PHP as a dynamic extension, so if you have precompiled version (Linux RPM, or Windows binary), there are still chances, that only thing you should do is to enable loading it automagically. It can be done by editing your php.ini file (under Windows, usually in C:\WINDOWS or C:\WINNT, under Linux /etc/php.ini) and uncommenting this line: ;extension=php_pgsql.dll ;under Windows ;extension=pgsql.so ;under Linux so it would look like that: extension=php_pgsql.dll ;under Windows extension=pgsql.so ;under Linux Q: I always get "Login failed" even though I'm _sure_ I'm using the right username and password. A: Check the PostgreSQL log on your server, it will give the exact reason why the login is failing. Edit the pg_hba.conf file in your PostgreSQL data dir and make sure you have enabled access to the server properly. Another likely reason is that you have not started your PostgreSQL with TCP/IP sockets enabled. To enable this, edit your postgresql.conf file and change this line: #tcpip_socket = false to: tcpip_socket = true and then restart PostgreSQL. Q: I can use any password to log in! A: PostgreSQL, by default, runs in trust mode. That means that it doesn't ask for passwords for local connections. We highly recommend that you edit your pg_hba.conf file, and change the login type to 'md5'. Note that if you change the 'local' login type to 'md5', then you might need to enter a password to start PostgreSQL. Get around this by using a .pgpass file - explained in the PostgreSQL documentation. Q: When I enter non-ASCII data into the database via a form, it's inserted as hexadecimal or Ӓ format! A: You have not created your database in the correct encoding. This problem will occur when you try to enter an umlaut into an SQL_ASCII database, or SJIS Japanese into an EUC-JP database, etc. Q: When I drop and re-create a table with the same name, it fails. A: You need to drop the sequence attached to the SERIAL column of the table as well. PostgreSQL 7.3 does this automatically. If you have upgraded to PostgreSQL 7.3 from an earlier version, you need to run the contrib/adddepend script to record all dependencies. Q: When inserting a row, what is does the 'Value' or 'Expression' box mean? A: Choosing 'Expression' means that you can use functions, operators, other field names, etc. in your value - you need to properly quote any literal values yourself. 'Value' on the other hand, means that no matter what you enter as the value, it will be inserted as-is into the database. Q: When browsing a table, the 'edit' and 'delete' links do not appear. A: In order, phpPgAdmin will prefer the following as unique row identifiers: 1. Primary keys 2. Unique keys (cannot be parital or expressional indexes) 3. OID column (will be slow to update, unless you index the OID column) Furthermore, any NULL values in the unique index will mean that that row will be uneditable. Also, since OIDs can become duplicated in a table, phpPgAdmin will alter the row, and then check to ensure that exactly one row has been modified - otherwise rollback will occur. Q: What happened to the database dump feature? A: You need to configure phpPgAdmin (in the config.inc.php file) to point to the location of the pg_dump and pg_dumpall utilities on your server. Once you have done that, the database export feature will appear. Q: I would like to help out with the development of phpPgAdmin. How should I proceed? A: Read the DEVELOPERS and TRANSLATORS files.