['condition' => isExtensionInstalled('curl')], 'php-mysql' => ['condition' => isExtensionInstalled('mysqli')], 'php-mbstring' => ['condition' => isExtensionInstalled('mbstring')], 'php-xml' => ['condition' => isExtensionInstalled('xml')], 'php-zip' => ['condition' => isExtensionInstalled('zip')], ]; // MariaDB / MySQL $mariadb_version = 10.1; $mysql_version = 5.7; // ######################################################### END OF PRECONFIGURATION // Function to check if a PHP extension is installed function isExtensionInstalled($extensionName) { return in_array($extensionName, get_loaded_extensions()); } function delDir($dir) { $files = glob($dir . '*', GLOB_MARK); foreach ($files as $file) { if (substr($file, -1) == '/') { if (file_exists($file)) { delDir($file); } } else { if (file_exists($file)) { unlink($file); } } } } if (file_exists($db_file_path)) { delDir(getcwd()); header("../"); exit; } if (file_exists($root_mode_file)) { $root_mode = true; } else { $root_mode = false; } // Only load the classes in case the user submitted the form if ($_POST) { // Load the classes and create the new objects require_once('includes/core_class.php'); require_once('includes/database_class.php'); $core = new Core(); $database = new Database(); if ($_POST['database_check'] == true) { $result = $database->database_check($_POST); echo $result; exit; } else { // Validate the post data if ($core->validate_post($_POST) == true) { // First create the database, then create tables, then write config file if ($database->create_database($_POST) == false) { $message = $core->show_message('error', "The database could not be created, please verify your settings."); } elseif ($database->create_tables($_POST) == false) { $message = $core->show_message('error', "The database tables could not be created, please verify your settings."); } elseif ($core->write_config($_POST) == false) { $message = $core->show_message('error', "The database configuration file could not be written, please chmod /application/config/database.php file to 777"); } if ($core->write_configfile($_POST) == false) { $message = $core->show_message('error', "The config configuration file could not be written, please chmod /application/config/config.php file to 777"); } // If no errors, redirect to registration page if (!isset($message)) { sleep(1); $ch = curl_init(); $protocol = ((!empty($_SERVER['HTTPS']) && $_SERVER['HTTPS'] !== 'off') || $_SERVER['SERVER_PORT'] == 443) ? "https" : "http"; list($realHost,) = explode(':', $_SERVER['HTTP_HOST']); $wavelog_url = $protocol . "://" . $realHost . ":" . $_SERVER['SERVER_PORT']; curl_setopt($ch, CURLOPT_URL, $wavelog_url); curl_setopt($ch, CURLOPT_VERBOSE, 0); curl_setopt($ch, CURLOPT_RETURNTRANSFER, true); $result = curl_exec($ch); curl_setopt($ch, CURLOPT_URL, $wavelog_url . "/index.php/update/dxcc"); $result = curl_exec($ch); delDir(getcwd()); header('Location: ' . $protocol . "://" . $_SERVER['HTTP_HOST'] . '/' . $_POST['directory']); exit; } } else { $message = $core->show_message('error', 'Not all fields have been filled in correctly. The host, username, password, and database name are required.'); } } } global $wavelog_url; ?>
Please make the /application/config/ folder writable. Example:chmod -R 777 application/config/
Don't forget to restore the permissions afterwards.