From: Daniel Köb Date: Thu, 12 Jan 2012 19:35:50 +0000 (+0100) Subject: Connect to the newly created database when checking if it needs to be filled. X-Git-Tag: v3.0~60^2 X-Git-Url: https://source.dussan.org/?a=commitdiff_plain;h=37dbf48434525b008c5201136e38eee1aac16c9b;p=nextcloud-server.git Connect to the newly created database when checking if it needs to be filled. --- diff --git a/lib/setup.php b/lib/setup.php index ce7ee24e134..eb32e84713f 100644 --- a/lib/setup.php +++ b/lib/setup.php @@ -189,16 +189,29 @@ class OC_Setup { self::pg_createDatabase($dbname, $dbuser, $connection); } - //fill the database if needed - $query = "select count(*) FROM pg_class WHERE relname='{$dbtableprefix}users' limit 1"; - $result = pg_query($connection, $query); - if($result){ - $row = pg_fetch_row($result); - } - if(!$result or $row[0]==0) { - OC_DB::createDbFromStructure('db_structure.xml'); - } + // the connection to dbname=postgres is not needed anymore pg_close($connection); + + // connect to the ownCloud database (dbname=$dbname) an check if it needs to be filled + $dbuser = OC_CONFIG::getValue('dbuser'); + $dbpass = OC_CONFIG::getValue('dbpassword'); + $connection_string = "host=$dbhost dbname=$dbname user=$dbuser password=$dbpass"; + $connection = @pg_connect($connection_string); + if(!$connection) { + $error[] = array( + 'error' => 'PostgreSQL username and/or password not valid', + 'hint' => 'You need to enter either an existing account or the administrator.' + ); + } else { + $query = "select count(*) FROM pg_class WHERE relname='{$dbtableprefix}users' limit 1"; + $result = pg_query($connection, $query); + if($result) { + $row = pg_fetch_row($result); + } + if(!$result or $row[0]==0) { + OC_DB::createDbFromStructure('db_structure.xml'); + } + } } } else {