X-Git-Url: https://git.mxchange.org/?p=mailer.git;a=blobdiff_plain;f=inc%2Fmysql-connect.php;h=00fd7d94e94f5464a4247199ee37245b2768f2ad;hp=92103e3663768f480725717e1287343d771f1329;hb=61621983cc6d7195fcc7eab29b5f6080ff283b34;hpb=63f159414369b5ea19a8ca75d8cd8033c45d8341 diff --git a/inc/mysql-connect.php b/inc/mysql-connect.php index 92103e3663..00fd7d94e9 100644 --- a/inc/mysql-connect.php +++ b/inc/mysql-connect.php @@ -10,13 +10,8 @@ * -------------------------------------------------------------------- * * Kurzbeschreibung : Verbindet zu Ihrer Datenbank * * -------------------------------------------------------------------- * - * $Revision:: $ * - * $Date:: $ * - * $Tag:: 0.2.1-FINAL $ * - * $Author:: $ * - * -------------------------------------------------------------------- * * Copyright (c) 2003 - 2009 by Roland Haeder * - * Copyright (c) 2009 - 2012 by Mailer Developer Team * + * Copyright (c) 2009 - 2016 by Mailer Developer Team * * For more information visit: http://mxchange.org * * * * This program is free software; you can redistribute it and/or modify * @@ -40,17 +35,45 @@ if (!defined('__SECURITY')) { die(); } // END - if +// Init array +$__functions = array(); + +// Init include file array as it follows same naming scheme +foreach ( array( + 'stats', + 'xml', + 'callback', + 'referral', + 'email', + 'request', + 'session', + 'code', + 'pool', + 'language', + 'sql', + 'expression', + 'encryption', + 'filter', + 'extensions') as $lib) { + + // Add it + array_push($__functions, $lib . '-functions'); +} // END - foreach + // Load more function libraries or includes -foreach (array('request-functions', 'session-functions', 'code-functions', 'language-functions', 'sql-functions', 'expression-functions', 'filter-functions', 'revision-functions', 'filters', 'mysql-manager', 'extensions-functions', 'email-functions', 'handler') as $lib) { +foreach (array_merge($__functions, array('filters', 'mysql-manager', 'handler')) as $lib) { // Load special functions loadIncludeOnce('inc/' . $lib . '.php'); } // END - foreach +// Remove array +unset($__functions); + // Set error handler set_error_handler('__errorHandler'); // Disable block-mode by default -enableBlockMode(false); +enableBlockMode(FALSE); // Init error handler initErrorHandler(); @@ -69,14 +92,11 @@ if (!isset($GLOBALS['__header_sent'])) { // Init fatal messages initFatalMessages(); -// Init repository data sub-system -initRepositoryData(); - // Enable HTML templates by default enableTemplateHtml(); // Are we in installation phase? -if ((!isInstalling()) && (!isInstallationPhase())) { +if ((!isInstaller()) && (isInstalled())) { // Load configuration file(s) here loadIncludeOnce('inc/load_config.php'); @@ -89,37 +109,8 @@ if ((!isInstalling()) && (!isInstallationPhase())) { // CSS array initExtensionCssFiles(); - if ((!empty($GLOBALS['mysql']['host'])) && (!empty($GLOBALS['mysql']['login'])) && (!empty($GLOBALS['mysql']['dbase']))) { - // Connect to DB - SQL_CONNECT($GLOBALS['mysql']['host'], $GLOBALS['mysql']['login'], $GLOBALS['mysql']['password'], __FILE__, __LINE__); - - // Is the link valid? - if (SQL_IS_LINK_UP()) { - // Enable exit on error - enableExitOnError(); - - // Is it a valid resource? - if (SQL_SELECT_DB($GLOBALS['mysql']['dbase'], __FILE__, __LINE__) === true) { - // Set database name (required for ext-optimize and isSqlTableCreated()) - setConfigEntry('__DB_NAME', $GLOBALS['mysql']['dbase']); - - // Remove MySQL array from namespace - unset($GLOBALS['mysql']); - - // Load cache - loadIncludeOnce('inc/load_cache.php'); - } else { - // Wrong database? - reportBug(__FILE__, __LINE__, 'Wrong database selected.'); - } - } else { - // No link to database! - reportBug(__FILE__, __LINE__, 'Database link is not yet up.'); - } - } else { - // Maybe you forgot to enter your database login? - reportBug(__FILE__, __LINE__, 'Database login is missing.'); - } + // Initialize SQL link + initSqlLink(); } else { // Default output is 'direct' for HTML output setConfigEntry('OUTPUT_MODE', 'direct'); @@ -130,8 +121,24 @@ if ((!isInstalling()) && (!isInstallationPhase())) { setConfigEntry('OUTPUT_MODE', 'render'); } // END - if - // CFG: DATABASE-TYPE - setConfigEntry('_DB_TYPE', 'mysql3'); + // Debug message + /* DEBUG: */ logDebugMessage(__FILE__, __LINE__, 'isAjaxOutputMode()=' . intval(isAjaxOutputMode()) . ',isSessionVariableSet(database_extension)=' . intval(isSessionVariableSet('database_extension'))); + + // Is it AJAX call and database_extension is set? + if ((isAjaxOutputMode()) && (isSessionVariableSet('database_extension'))) { + // Then take it from session + /* DEBUG: */ logDebugMessage(__FILE__, __LINE__, 'Setting _DB_TYPE from session;database_extension=' . getSession('database_extension')); + setConfigEntry('_DB_TYPE', getSession('database_extension')); + } else { + // Debug message + /* DEBUG: */ logDebugMessage(__FILE__, __LINE__, 'Setting _DB_TYPE to default (mysql) ...'); + + // Set (old) default + setConfigEntry('_DB_TYPE', 'mysql'); + } + + // Set link as down + unsetSqlLinkUp(__FILE__, __LINE__); // Load database layer here loadIncludeOnce('inc/db/lib.php'); @@ -139,9 +146,12 @@ if ((!isInstalling()) && (!isInstallationPhase())) { // Init message system initMessages(); + // Init session + initSession(); + // Include more - foreach (array('databases', 'session', 'versions', 'install-functions', 'load_config', 'load_cache') as $inc) { - // Load the include + foreach (array('databases', 'install-functions', 'load_config', 'load_cache') as $inc) { + // Load include file loadIncludeOnce('inc/' . $inc . '.php'); } // END - foreach