From aece3844c6ac7c11779e6c86162739af438cf97f Mon Sep 17 00:00:00 2001 From: Laurent Destailleur Date: Mon, 12 Jul 2021 10:35:25 +0200 Subject: [PATCH] Fix better error message if password is empty --- htdocs/install/step1.php | 55 +++++++++++++++++++++++----------------- 1 file changed, 32 insertions(+), 23 deletions(-) diff --git a/htdocs/install/step1.php b/htdocs/install/step1.php index a8bd9a4d3b6..63b8d66539b 100644 --- a/htdocs/install/step1.php +++ b/htdocs/install/step1.php @@ -531,39 +531,48 @@ if (!$error && $db->connected && $action == "set") { if ($db->connected) { $resultbis = 1; - // Create user - $result = $db->DDLCreateUser($dolibarr_main_db_host, $dolibarr_main_db_user, $dolibarr_main_db_pass, $dolibarr_main_db_name); - - // Create user bis - if ($databasefortest == 'mysql') { - if (!in_array($dolibarr_main_db_host, array('127.0.0.1', '::1', 'localhost', 'localhost.local'))) { - $resultbis = $db->DDLCreateUser('%', $dolibarr_main_db_user, $dolibarr_main_db_pass, $dolibarr_main_db_name); - } - } - - if ($result > 0 && $resultbis > 0) { + if (empty($dolibarr_main_db_pass)) { + dolibarr_install_syslog("step1: failed to create user, password is empty", LOG_ERR); print ''; print $langs->trans("UserCreation").' : '; print $dolibarr_main_db_user; print ''; - print 'Ok'; + print ''.$langs->trans("Error").": A password for database user is mandatory."; } else { - if ($db->errno() == 'DB_ERROR_RECORD_ALREADY_EXISTS' - || $db->errno() == 'DB_ERROR_KEY_NAME_ALREADY_EXISTS' - || $db->errno() == 'DB_ERROR_USER_ALREADY_EXISTS') { - dolibarr_install_syslog("step1: user already exists"); + // Create user + $result = $db->DDLCreateUser($dolibarr_main_db_host, $dolibarr_main_db_user, $dolibarr_main_db_pass, $dolibarr_main_db_name); + + // Create user bis + if ($databasefortest == 'mysql') { + if (!in_array($dolibarr_main_db_host, array('127.0.0.1', '::1', 'localhost', 'localhost.local'))) { + $resultbis = $db->DDLCreateUser('%', $dolibarr_main_db_user, $dolibarr_main_db_pass, $dolibarr_main_db_name); + } + } + + if ($result > 0 && $resultbis > 0) { print ''; print $langs->trans("UserCreation").' : '; print $dolibarr_main_db_user; print ''; - print ''.$langs->trans("LoginAlreadyExists").''; + print 'Ok'; } else { - dolibarr_install_syslog("step1: failed to create user", LOG_ERR); - print ''; - print $langs->trans("UserCreation").' : '; - print $dolibarr_main_db_user; - print ''; - print ''.$langs->trans("Error").': '.$db->errno().' '.$db->error().($db->error ? '. '.$db->error : '').""; + if ($db->errno() == 'DB_ERROR_RECORD_ALREADY_EXISTS' + || $db->errno() == 'DB_ERROR_KEY_NAME_ALREADY_EXISTS' + || $db->errno() == 'DB_ERROR_USER_ALREADY_EXISTS') { + dolibarr_install_syslog("step1: user already exists"); + print ''; + print $langs->trans("UserCreation").' : '; + print $dolibarr_main_db_user; + print ''; + print ''.$langs->trans("LoginAlreadyExists").''; + } else { + dolibarr_install_syslog("step1: failed to create user", LOG_ERR); + print ''; + print $langs->trans("UserCreation").' : '; + print $dolibarr_main_db_user; + print ''; + print ''.$langs->trans("Error").': '.$db->errno().' '.$db->error().($db->error ? '. '.$db->error : '').""; + } } }