From 11704ffda4955dfd39ef081c8ae5caa10f4734c7 Mon Sep 17 00:00:00 2001 From: Janusz Dobrowolski Date: Sat, 8 Aug 2009 17:10:30 +0000 Subject: [PATCH] Fixed bug [0000152] (Changed config_db.php afyter unsuccesfull database creation) --- CHANGELOG.txt | 6 ++++- install/save.php | 63 +++++++++++++++++++++++++++--------------------- 2 files changed, 40 insertions(+), 29 deletions(-) diff --git a/CHANGELOG.txt b/CHANGELOG.txt index d95307a..6e58979 100644 --- a/CHANGELOG.txt +++ b/CHANGELOG.txt @@ -19,7 +19,11 @@ Legend: ! -> Note $ -> Affected files -08-Aut-2009 Jue Hunt +08-Aug-2009 Janusz Dobrowolski +# [0000152] Config_db.php changed after failed company database creation +$ /install/save.php + +08-Aug-2009 Joe Hunt # [0000153] not possible to make a new balance sheet GL account cl (old style) $ /gl/manage/gl_account_classes.php diff --git a/install/save.php b/install/save.php index e832d87..2df68e9 100644 --- a/install/save.php +++ b/install/save.php @@ -349,36 +349,43 @@ $db = mysql_connect($database_host, $database_username, $database_password); if (!$db) { display_error('Database host name, username and/or password incorrect. MySQL Error:
'.mysql_error()); -} - -$err = write_config_db($table_prefix != ""); -if ($err == -1) - display_error("Cannot open the configuration file ($config_filename)"); -else if ($err == -2) - display_error("Cannot write to the configuration file ($config_filename)"); -else if ($err == -3) - display_error("The configuration file $config_filename is not writable. Change its permissions so it is, then re-run step 4."); - -if($install_tables == true) -{ - if (!mysql_select_db($database_name, $db)) - { - - // Try to create the database - mysql_query('CREATE DATABASE '.$database_name); - mysql_select_db($database_name, $db); +} else { + $result = true; + if($install_tables == true) + { + if (!mysql_select_db($database_name, $db)) + { + // Try to create the database + if (!($result = mysql_query('CREATE DATABASE '.$database_name))) { + display_error(_("Cannot create database"). + " '$database_name'"); + } else + $result = mysql_select_db($database_name, $db); + } + if($result) { + $import_filename = $path_to_root."/sql/en_US-demo.sql"; + db_import($import_filename, $db_connections[$id]); + } + } + else + { + $result = mysql_select_db($database_name, $db); + } + if ($result) { + $sql = "UPDATE ".$table_prefix."users SET password = '" . md5($admin_password) . "', email = ".db_escape($admin_email)." WHERE user_id = 'admin'"; + db_query($sql, "could not update admin account"); + $sql = "UPDATE ".$table_prefix."company SET coy_name = ".db_escape($company_name)." WHERE coy_code = 1"; + db_query($sql, "could not update company name. Do it manually later in Setup"); + + $err = write_config_db($table_prefix != ""); + if ($err == -1) + display_error("Cannot open the configuration file ($config_filename)"); + else if ($err == -2) + display_error("Cannot write to the configuration file ($config_filename)"); + else if ($err == -3) + display_error("The configuration file $config_filename is not writable. Change its permissions so it is, then re-run step 4."); } - $import_filename = $path_to_root."/sql/en_US-demo.sql"; - db_import($import_filename, $db_connections[$id]); -} -else -{ - mysql_select_db($database_name, $db); } -$sql = "UPDATE ".$table_prefix."users SET password = '" . md5($admin_password) . "', email = ".db_escape($admin_email)." WHERE user_id = 'admin'"; -db_query($sql, "could not update admin account"); -$sql = "UPDATE ".$table_prefix."company SET coy_name = ".db_escape($company_name)." WHERE coy_code = 1"; -db_query($sql, "could not update company name. Do it manually later in Setup"); session_unset(); session_destroy(); -- 2.30.2