From facccbd66a258549554de3fa87386223c3bf8852 Mon Sep 17 00:00:00 2001 From: pedro_morgan <pedro_morgan@ispconfig3> Date: Sun, 19 Aug 2007 21:37:44 -0400 Subject: [PATCH] * Tidiied up teh configure_fatabases() * Made parts php5 * Other minor tweaks --- install/install.php | 8 ++++++-- install/lib/installer_base.lib.php | 41 ++++++++++++++++++++++------------------- install/lib/mysql.lib.php | 1 + 3 files changed, 29 insertions(+), 21 deletions(-) diff --git a/install/install.php b/install/install.php index 8228971..40bb450 100644 --- a/install/install.php +++ b/install/install.php @@ -66,10 +66,13 @@ //TODO: this is not there ???? $conf['dist'] = $dist; -//** Lets go ! +//**************************************************************************************************** +//** Installer Interface +//**************************************************************************************************** $inst = new installer(); swriteln($inst->lng(' Following will be a few questions for primary configuration so be careful.')); -swriteln($inst->lng(' Default values are in [brackets] and can be accepted with <ENTER>'."\n\n")); +swriteln($inst->lng(' Default values are in [brackets] and can be accepted with <ENTER>.')); +swriteln($inst->lng(' Tap in "quit" (without the quotes) to stop the installer.'."\n\n")); //** Select the language $conf['language'] = $inst->simple_query('Select language', array('en','de'), 'en'); @@ -89,6 +92,7 @@ $tmp_mysql_server_host = $inst->free_query('MySQL server hostname', $conf['mysql']['host']); $tmp_mysql_server_admin_user = $inst->free_query('MySQL root username', $conf['mysql']['admin_user']); $tmp_mysql_server_admin_password = $inst->free_query('MySQL root password', $conf['mysql']['admin_password']); + //TODO: it does not ask for which database ? //* Initialize the MySQL server connection if(@mysql_connect($tmp_mysql_server_host, $tmp_mysql_server_admin_user, $tmp_mysql_server_admin_password)) { diff --git a/install/lib/installer_base.lib.php b/install/lib/installer_base.lib.php index 637047a..6d247b4 100644 --- a/install/lib/installer_base.lib.php +++ b/install/lib/installer_base.lib.php @@ -115,38 +115,41 @@ } - /* - This function creates the database for ISPConfig - */ - - function configure_database() { + /** Create the database for ISPConfig */ + public function configure_database() + { global $conf; - - // Create the database - if(!$this->db->query("CREATE DATABASE IF NOT EXISTS ".$conf["mysql"]["database"])) { - $this->error('Unable to create MySQL database: '.$conf["mysql"]["database"].';'); + $cf = $conf['mysql']; // make $conf['mysql'] more accessible + //** Create the database + if(!$this->db->query('CREATE DATABASE IF NOT EXISTS '.$cf['database'])) { + $this->error('Unable to create MySQL database: '.$cf['database'].'.'); } - // Create the ISPConfig database user - if(!$this->db->query("GRANT SELECT, INSERT, UPDATE, DELETE ON ".$conf["mysql"]["database"].".* TO '".$conf["mysql"]["ispconfig_user"]."'@'".$conf["mysql"]["host"]."' IDENTIFIED BY '".$conf["mysql"]["ispconfig_password"]."';")) { - $this->error('Unable to create database user: '.$conf["mysql"]["ispconfig_user"]); + //* Create the ISPConfig database user + $query = 'GRANT SELECT, INSERT, UPDATE, DELETE ON '.$cf['database'].".* " + ."TO '".$cf['ispconfig_user']."'@'".$cf['host']."' " + ."IDENTIFIED BY '".$cf['ispconfig_password']."';"; + if(!$this->db->query($query)) { + $this->error('Unable to create database user: '.$cf['ispconfig_user']); } - // Reload database priveliges + //* Reload database privelages $this->db->query('FLUSH PRIVILEGES;'); - // Set the database name in the DB library - $this->db->dbName = $conf["mysql"]["database"]; + //* Set the database name in the DB library + $this->db->dbName = $cf['database']; - // loading the database dump into the database, if database is empty + //* Load the database dump into the database, if database contains no tables $db_tables = $this->db->getTables(); if(count($db_tables) > 0) { $this->error('Stopped: Database contains already some tables.'); } else { - if($conf["mysql"]["admin_password"] == '') { - caselog("mysql -h '".$conf["mysql"]["host"]."' -u '".$conf["mysql"]["admin_user"]."' '".$conf["mysql"]["database"]."' < 'sql/ispconfig3.sql' &> /dev/null", $FILE, __LINE__,"read in ispconfig3.sql","could not read in ispconfig3.sql"); + if($cf['admin_password'] == '') { + caselog("mysql -h '".$cf['host']."' -u '".$cf['admin_user']."' '".$cf['database']."' < 'sql/ispconfig3.sql' &> /dev/null", + $FILE, __LINE__, 'read in ispconfig3.sql', 'could not read in ispconfig3.sql'); } else { - caselog("mysql -h '".$conf["mysql"]["host"]."' -u '".$conf["mysql"]["admin_user"]."' -p'".$conf["mysql"]["admin_password"]."' '".$conf["mysql"]["database"]."' < 'sql/ispconfig3.sql' &> /dev/null", $FILE, __LINE__,"read in ispconfig3.sql","could not read in ispconfig3.sql"); + caselog("mysql -h '".$cf['host']."' -u '".$cf['admin_user']."' -p'".$cf['admin_password']."' '".$cf['database']."' < 'sql/ispconfig3.sql' &> /dev/null", + $FILE, __LINE__, 'read in ispconfig3.sql', 'could not read in ispconfig3.sql'); } $db_tables = $this->db->getTables(); if(count($db_tables) == 0) { diff --git a/install/lib/mysql.lib.php b/install/lib/mysql.lib.php index b930bba..eac33e5 100644 --- a/install/lib/mysql.lib.php +++ b/install/lib/mysql.lib.php @@ -356,6 +356,7 @@ $database_name = $this->dbName; } $result = mysql_query("SHOW TABLES FROM `$database_name`"); + $tb_names = array(); for ($i = 0; $i < mysql_num_rows($result); $i++) { $tb_names[$i] = mysql_tablename($result, $i); } -- Gitblit v1.9.1