diff --git a/htdocs/install/etape0.php b/htdocs/install/etape0.php index 6256af29ecb..aa2d1c8599e 100644 --- a/htdocs/install/etape0.php +++ b/htdocs/install/etape0.php @@ -18,11 +18,11 @@ */ /** - \file htdocs/install/etape0.php - \ingroup install - \brief Permet d'afficher et de confirmer le charset par rapport aux informations précédentes -> sélection suite à connexion' - \version $Id$ -*/ + \file htdocs/install/etape0.php + \ingroup install + \brief Permet d'afficher et de confirmer le charset par rapport aux informations précédentes -> sélection suite à connexion' + \version $Id$ + */ define('DONOTLOADCONF',1); // To avoid loading conf by file inc.php @@ -50,8 +50,8 @@ dolibarr_install_syslog("etape0: Entering etape0.php page"); /* -* View -*/ + * View + */ pHeader($langs->trans("ConfigurationFile"),"etape1"); @@ -59,11 +59,11 @@ pHeader($langs->trans("ConfigurationFile"),"etape1"); if ($_POST["action"] == "set") { umask(0); - foreach($_POST as $cle=>$valeur) - { - echo ''; + foreach($_POST as $cle=>$valeur) + { + echo ''; if (! eregi('^db_pass',$cle)) dolibarr_install_syslog("Choice for ".$cle." = ".$valeur); - } + } } // Check parameters @@ -90,8 +90,8 @@ if (empty($_POST["db_user"])) /** -* Tentative de connexion a la base -*/ + * Tentative de connexion a la base + */ if (! $error) { $result=include_once($main_dir."/lib/databases/".$_POST["db_type"].".lib.php"); @@ -117,7 +117,7 @@ if (! $error) // If we need root access if (! $error && (! empty($_POST["db_create_database"]) || ! empty($_POST["db_create_user"]))) - { + { $databasefortest=$_POST["db_name"]; if (! empty($_POST["db_create_database"])) { @@ -136,7 +136,7 @@ if (! $error) } //print $_POST["db_type"].",".$_POST["db_host"].",$userroot,$passroot,$databasefortest,".$_POST["db_port"]; $db = new DoliDb($_POST["db_type"],$_POST["db_host"],$userroot,$passroot,$databasefortest,$_POST["db_port"]); - + dolibarr_syslog("databasefortest=".$databasefortest." connected=".$db->connected." database_selected=".$db->database_selected, LOG_DEBUG); //print "databasefortest=".$databasefortest." connected=".$db->connected." database_selected=".$db->database_selected; @@ -147,7 +147,7 @@ if (! $error) if (! $db->connected) print $langs->trans("IfDatabaseNotExistsGoBackAndUncheckCreate").'

'; print $langs->trans("ErrorGoBackAndCorrectParameters"); $error++; - } + } elseif ($db->error && ! (! empty($_POST["db_create_database"]) && $db->connected)) { print '
'.$db->error.'
'; @@ -158,7 +158,7 @@ if (! $error) } // If we need simple access if (! $error && (empty($_POST["db_create_database"]) && empty($_POST["db_create_user"]))) - { + { $db = new DoliDb($_POST["db_type"],$_POST["db_host"],$_POST["db_user"],$_POST["db_pass"],$_POST["db_name"],$_POST["db_port"]); if ($db->error) { @@ -180,15 +180,15 @@ if (! $error) else { - if (isset($db)) print $db->lasterror(); - if (isset($db) && ! $db->connected) print '
'.$langs->trans("BecauseConnectionFailedParametersMayBeWrong").'

'; - print $langs->trans("ErrorGoBackAndCorrectParameters"); - $error++; + if (isset($db)) print $db->lasterror(); + if (isset($db) && ! $db->connected) print '
'.$langs->trans("BecauseConnectionFailedParametersMayBeWrong").'

'; + print $langs->trans("ErrorGoBackAndCorrectParameters"); + $error++; } /* -* Si creation database demandée, il est possible de faire un choix -*/ + * Si creation database demandée, il est possible de faire un choix + */ $disabled=""; if (! $error && ! empty($_POST["db_create_database"])) { @@ -215,22 +215,25 @@ if (! $error && $db->connected) if (! $error && $db->connected) { ?> - - - - +

trans("CharsetChoice");?>

+ + + + + getDefaultCharacterSetDatabase(); $defaultCollationConnection=$db->getDefaultCollationDatabase(); $listOfCharacterSet=$db->getListOfCharacterSet(); $listOfCollation=$db->getListOfCollation(); - - ?> - + // Choice of character_set_database + ?> + - + - - - + - + - + - - - -
+

trans("CharsetChoice");?>

+
trans("CharacterSetDatabase"); ?> - '; @@ -256,20 +259,20 @@ if (! $error && $db->connected) { print ''; } - ?> + ?> +
trans("CharacterSetDatabaseComment"); ?>
trans("CharacterSetDatabaseComment"); ?>
trans("CollationConnection"); ?> - '; @@ -295,16 +298,17 @@ if (! $error && $db->connected) { print ''; } - ?> + ?> +
trans("CollationConnectionComment"); ?>
trans("CollationConnectionComment"); ?>
+ + +$valeur) + { + if (! eregi('^db_pass',$cle)) dolibarr_install_syslog("Choice for ".$cle." = ".$valeur); + } + print '

'.$langs->trans("ConfigurationFile").'

'; print ''; @@ -153,11 +158,11 @@ if ($_POST["action"] == "set") /* Authentication */ if ($_POST["db_type"] == 'mssql') { - fputs($fp, '$dolibarr_main_authentication="dolibarr_mdb2";'); + fputs($fp, '$dolibarr_main_authentication="dolibarr_mdb2";'); } else { - fputs($fp, '$dolibarr_main_authentication="dolibarr";'); + fputs($fp, '$dolibarr_main_authentication="dolibarr";'); } fputs($fp,"\n"); @@ -381,8 +386,7 @@ if ($_POST["action"] == "set") */ if (! $error && (isset($_POST["db_create_database"]) && $_POST["db_create_database"] == "on")) { - dolibarr_install_syslog("etape1: Creation de la base : ".$dolibarr_main_db_name); - + dolibarr_install_syslog("etape1: Create database : ".$dolibarr_main_db_name); $db = new DoliDb($conf->db->type,$conf->db->host,$userroot,$passroot,'',$conf->db->port); if ($db->connected) @@ -507,8 +511,9 @@ if ($_POST["action"] == "set") print ""; // Affiche aide diagnostique - print ''; @@ -521,5 +526,4 @@ if ($_POST["action"] == "set") } pFooter($error,$setuplang); - ?> diff --git a/htdocs/install/inc.php b/htdocs/install/inc.php index e53d8799cb4..95ec5f9a128 100644 --- a/htdocs/install/inc.php +++ b/htdocs/install/inc.php @@ -139,9 +139,6 @@ if (file_exists('../../install.lock')) } -// Forcage constante LOG - - // Forcage du log pour les install et mises a jour $conf->syslog->enabled=1; $conf->global->SYSLOG_LEVEL=constant('LOG_DEBUG'); @@ -216,6 +213,15 @@ function conf($dolibarr_main_document_root) if (empty($dolibarr_main_db_collation)) $dolibarr_main_db_collation='latin1_swedish_ci'; $conf->db->dolibarr_main_db_collation=$dolibarr_main_db_collation; + // Forcage du log pour les install et mises a jour + $conf->syslog->enabled=1; + $conf->global->SYSLOG_LEVEL=constant('LOG_DEBUG'); + if (@is_writable('/tmp')) define('SYSLOG_FILE','/tmp/dolibarr_install.log'); + else if (! empty($_ENV["TMP"]) && @is_writable($_ENV["TMP"])) define('SYSLOG_FILE',$_ENV["TMP"].'/dolibarr_install.log'); + else if (! empty($_ENV["TEMP"]) && @is_writable($_ENV["TEMP"])) define('SYSLOG_FILE',$_ENV["TEMP"].'/dolibarr_install.log'); + else if (@is_writable("/")) define('SYSLOG_FILE','/dolibarr_install.log'); + define('SYSLOG_FILE_NO_ERROR',1); + return 1; } diff --git a/htdocs/langs/en_US/install.lang b/htdocs/langs/en_US/install.lang index 2db451943d6..32c7472af26 100644 --- a/htdocs/langs/en_US/install.lang +++ b/htdocs/langs/en_US/install.lang @@ -126,6 +126,8 @@ OrphelinsPaymentsDetectedByMethod=Orphelins payment detected by method %s RemoveItManuallyAndPressF5ToContinue=Remove it manually and press F5 to continue. KeepDefaultValues=You use the Doliwamp setup wizard, so values proposed here are already optimized. Change them only if you know what you do. FieldRenamed=Field renamed +IfLoginDoesNotExistsCheckCreateUser=If login does not exists yet, you must check option "Create user" +ErrorConnection=Server "%s", database name "%s", login "%s", or database password may be wrong or PHP client version may be too old compared to database version. ######### # upgrade diff --git a/htdocs/langs/fr_FR/install.lang b/htdocs/langs/fr_FR/install.lang index 9a7848173e3..50cd4b89b0b 100644 --- a/htdocs/langs/fr_FR/install.lang +++ b/htdocs/langs/fr_FR/install.lang @@ -126,6 +126,8 @@ OrphelinsPaymentsDetectedByMethod=Paiement orphelins detect RemoveItManuallyAndPressF5ToContinue=Supprimer le manuellement et appuyez sur F5 pour continuer. KeepDefaultValues=Comme vous utilisez l'assistant d'installation depuis DoliWamp, les valeurs proposées aux paramètres sont déjà optimisées. Ne les modifier qu'en connaissance de cause. FieldRenamed=Champ renommé +IfLoginDoesNotExistsCheckCreateUser=Si le login n'existe pas encore, vous devez cocher l'option "Créer l'utilisateur" +ErrorConnection=Le serveur "%s", nom de base "%s", login "%s", ou mot de passe de la base de donnée est peut-être incorrect ou la version du client PHP trop ancienne par rapport à la version de la base de donnée. ######### # upgrade diff --git a/htdocs/lib/databases/mysql.lib.php b/htdocs/lib/databases/mysql.lib.php index f07b03dbaa9..24be80e3e79 100644 --- a/htdocs/lib/databases/mysql.lib.php +++ b/htdocs/lib/databases/mysql.lib.php @@ -882,7 +882,7 @@ class DoliDb $sql.= " VALUES ('$dolibarr_main_db_host','$dolibarr_main_db_user',password('$dolibarr_main_db_pass')"; $sql.= ",'Y','Y','Y','Y','Y','Y','Y','Y');"; - dolibarr_syslog("mysql.lib::DDLCreateUser sql=".$sql); + dolibarr_syslog("mysql.lib::DDLCreateUser", LOG_DEBUG); // No sql to avoid password in log $resql=$this->query($sql); if (! $resql) { diff --git a/htdocs/lib/databases/mysqli.lib.php b/htdocs/lib/databases/mysqli.lib.php index 405d70273fd..211a9941a7b 100644 --- a/htdocs/lib/databases/mysqli.lib.php +++ b/htdocs/lib/databases/mysqli.lib.php @@ -896,7 +896,7 @@ class DoliDb $sql.= " VALUES ('$dolibarr_main_db_host','$dolibarr_main_db_user',password('$dolibarr_main_db_pass')"; $sql.= ",'Y','Y','Y','Y','Y','Y','Y','Y');"; - dolibarr_syslog("mysqli.lib::DDLCreateUser sql=".$sql); + dolibarr_syslog("mysqli.lib::DDLCreateUser", LOG_DEBUG); // No sql to avoid password in log $resql=$this->query($sql); if (! $resql) { diff --git a/htdocs/lib/databases/pgsql.lib.php b/htdocs/lib/databases/pgsql.lib.php index 3dbc6772759..8978fda0e26 100644 --- a/htdocs/lib/databases/pgsql.lib.php +++ b/htdocs/lib/databases/pgsql.lib.php @@ -833,7 +833,7 @@ class DoliDb { $sql = "create user \"".$dolibarr_main_db_user."\" with password '".$dolibarr_main_db_pass."'"; - dolibarr_syslog("pgsql.lib::DDLCreateUser sql=".$sql); + dolibarr_syslog("pgsql.lib::DDLCreateUser", LOG_DEBUG); // No sql to avoid password in log $resql=$this->query($sql); if (! $resql) {

Le serveur "'.$conf->db->host.'", nom de base "'.$conf->db->name.'", login "'.$conf->db->user.'", ou mot de passe de la base de donnée est peut-être incorrect ou la version du client PHP trop ancienne par rapport à la version de la base de donnée.
'; - print 'Si le login n\'existe pas encore, vous devez cocher l\'option "Créer l\'utilisateur".
'; + print '

'; + print $langs->trans("ErrorConnection",$conf->db->host,$conf->db->name,$conf->db->user); + print $langs->trans('IfLoginDoesNotExistsCheckCreateUser').'
'; print $langs->trans("ErrorGoBackAndCorrectParameters").'

'; print '