// Use environment variables for mysql if they are set beforehand
if (!empty(getenv('MYSQL_HOST'))
- && !empty(getenv('MYSQL_PORT'))
&& (!empty(getenv('MYSQL_USERNAME')) || !empty(getenv('MYSQL_USER')))
- && !empty(getenv('MYSQL_PASSWORD'))
+ && !getenv('MYSQL_PASSWORD') === false
&& !empty(getenv('MYSQL_DATABASE'))) {
- $db_host = getenv('MYSQL_HOST') . ':' . getenv('MYSQL_PORT');
+ $db_host = getenv('MYSQL_HOST');
+ if (!empty(getenv('MYSQL_PORT'))) {
+ $db_host .= ':' . getenv('MYSQL_PORT');
+ }
if (!empty(getenv('MYSQL_USERNAME'))) {
$db_user = getenv('MYSQL_USERNAME');
- } elseif (!empty(getenv('MYSQL_USER'))) {
+ } else {
$db_user = getenv('MYSQL_USER');
}
- $db_pass = getenv('MYSQL_PASSWORD');
+ $db_pass = (string) getenv('MYSQL_PASSWORD');
$db_data = getenv('MYSQL_DATABASE');
}
$base_config_file_path = stream_resolve_include_path($base_config_file_name);
$config_file_path = dirname($base_config_file_path) . DIRECTORY_SEPARATOR . $config_file_name;
- $config_string = file_get_contents($base_config_file_path);
+ if (!file_exists($config_file_path)) {
+ $config_string = file_get_contents($base_config_file_path);
- $config_string = str_replace('die(', '// die(', $config_string);
- $config_string = str_replace('your.mysqlhost.com', 'localhost', $config_string);
- $config_string = str_replace('mysqlusername' , getenv('USER'), $config_string);
- $config_string = str_replace('mysqlpassword' , getenv('PASS'), $config_string);
- $config_string = str_replace('mysqldatabasename' , getenv('DB'), $config_string);
+ $config_string = str_replace('die(', '// die(', $config_string);
- file_put_contents($config_file_path, $config_string);
+ file_put_contents($config_file_path, $config_string);
+ }
}
/**
protected function getConnection()
{
if (!dba::$connected) {
- dba::connect('localhost', getenv('USER'), getenv('PASS'), getenv('DB'));
+ dba::connect(getenv('MYSQL_HOST') . ':' . getenv('MYSQL_PORT'), getenv('MYSQL_USERNAME'), getenv('MYSQL_PASSWORD'), getenv('MYSQL_DATABASE'));
if (dba::$connected) {
$app = get_app();