ts("An auto_increment_increment value greater than 1 is not currently supported. Please see issue CRM-7923 for further details and potential workaround."),
)
);
+ $testDetails = array(
+ ts("MySQL %1 Configuration", array(1 => $dbName)),
+ ts("Is the provided database name valid?"),
+ ts("The database name provided is not valid. Please use only 0-9, a-z, A-Z and _ as characters in the name."),
+ );
+ if (!CRM_Core_DAO::requireValidDBName($databaseConfig['database'])) {
+ $this->error($testDetails);
+ return FALSE;
+ }
+ else {
+ $this->testing($testDetails);
+ }
$this->requireMySQLThreadStack($databaseConfig['server'],
$databaseConfig['username'],
$databaseConfig['password'],
$aboveMinVersion = version_compare($phpVersion, $minVersion) >= 0;
$belowMaxVersion = $maxVersion ? version_compare($phpVersion, $maxVersion) < 0 : TRUE;
- if ($maxVersion && $aboveMinVersion && $belowMaxVersion) {
- return TRUE;
- }
- elseif (!$maxVersion && $aboveMinVersion) {
+ if ($aboveMinVersion && $belowMaxVersion) {
+ if (version_compare(phpversion(), CRM_Upgrade_Incremental_General::MIN_RECOMMENDED_PHP_VER) < 0) {
+ $testDetails[2] = ts('This webserver is running an outdated version of PHP (%1). It is strongly recommended to upgrade to PHP %2 or later, as older versions can present a security risk.', array(
+ 1 => phpversion(),
+ 2 => CRM_Upgrade_Incremental_General::MIN_RECOMMENDED_PHP_VER,
+ ));
+ $this->warning($testDetails);
+ }
return TRUE;
}
return;
}
else {
- if (@mysql_query("CREATE DATABASE $database")) {
+ $query = sprintf("CREATE DATABASE %s", mysql_real_escape_string($database));
+ if (@mysql_query($query)) {
$okay = ts("Able to create a new database.");
}
else {
// skip if database already present
return;
}
-
- if (@mysql_query("CREATE DATABASE $database")) {
+ $query = sprintf("CREATE DATABASE %s", mysql_real_escape_string($database));
+ if (@mysql_query($query)) {
}
else {
$errorTitle = ts("Oops! Could not create database %1", array(1 => $database));
//change the default language to one chosen
if (isset($config['seedLanguage']) && $config['seedLanguage'] != 'en_US') {
- // This ensures that defaults get set, otherwise the user will login
- // and most configurations will be empty, not set to en_US defaults.
- civicrm_api3('Setting', 'revert');
-
civicrm_api3('Setting', 'create', array(
'domain_id' => 'current_domain',
'lcMessages' => $config['seedLanguage'],