diff options
author | Dries Buytaert <dries@buytaert.net> | 2006-08-18 08:41:49 +0000 |
---|---|---|
committer | Dries Buytaert <dries@buytaert.net> | 2006-08-18 08:41:49 +0000 |
commit | 885a29c4cd13776165c40080a00180cddd420a46 (patch) | |
tree | 1cadcca92d4fcfab19714d4eabb90e33d9579632 /includes | |
parent | 02b3877dd799b46090c10c574f9fa882292821f6 (diff) | |
download | brdo-885a29c4cd13776165c40080a00180cddd420a46.tar.gz brdo-885a29c4cd13776165c40080a00180cddd420a46.tar.bz2 |
- Patch #39382 by smsimms / sammys et al: make PostgreSQL password optional.
Diffstat (limited to 'includes')
-rw-r--r-- | includes/database.pgsql.inc | 23 |
1 files changed, 16 insertions, 7 deletions
diff --git a/includes/database.pgsql.inc b/includes/database.pgsql.inc index e969f722a..7f03bceaa 100644 --- a/includes/database.pgsql.inc +++ b/includes/database.pgsql.inc @@ -31,15 +31,24 @@ function db_connect($url) { } $url = parse_url($url); + $conn_string = ''; // Decode url-encoded information in the db connection string - $url['user'] = urldecode($url['user']); - $url['pass'] = urldecode($url['pass']); - $url['host'] = urldecode($url['host']); - $url['path'] = urldecode($url['path']); - - $conn_string = ' user='. $url['user'] .' dbname='. substr($url['path'], 1) .' password='. $url['pass'] . ' host=' . $url['host']; - $conn_string .= isset($url['port']) ? ' port=' . $url['port'] : ''; + if (isset($url['user'])) { + $conn_string .= ' user=' . urldecode($url['user']); + } + if (isset($url['pass'])) { + $conn_string .= ' password=' . urldecode($url['pass']); + } + if (isset($url['host'])) { + $conn_string .= ' host=' . urldecode($url['host']); + } + if (isset($url['path'])) { + $conn_string .= ' dbname=' . substr(urldecode($url['path']), 1); + } + if (isset($url['port'])) { + $conn_string .= ' port=' . urldecode($url['port']); + } // pg_last_error() does not return a useful error message for database // connection errors. We must turn on error tracking to get at a good error |