Example #1
0
function WriteParams($as = 0, $restore_values = false)
{
    // wenn $as=1 wird versucht den aktuellen Index der Datenbank nach dem Einlesen wieder zu ermitteln
    // auch wenn sich die Indexnummer durch Loeschaktionen geaendert hat
    global $config, $databases, $config_dontsave;
    $nl = "\n";
    // alte Werte retten
    if ($as) {
        if (is_array($restore_values)) {
            if ($restore_values['cron_dbindex'] < 0) {
                // Multidump oder "alle Datenbanken" war gewaehlt
                $config['cron_dbindex'] = $restore_values['cron_dbindex'];
            } else {
                //den Index der konkreten Datenbank aus der alten Konfiguration ermitteln
                $db_names = array();
                $db_names = array_flip($databases['Name']);
                if (isset($db_names[$restore_values['db_actual']])) {
                    // alte Db existiert noch -> Index uebernehmen
                    $databases['db_actual'] = $restore_values['db_actual'];
                } else {
                    $databases['db_actual'] = $databases['Name'][0];
                }
                //Cron-Index wiederfinden
                if (isset($db_names[$restore_values['cron_dbindex']])) {
                    $config['cron_dbindex'] = $db_names[$restore_values['cron_dbindex']];
                } else {
                    // DB wurde zwischenzeitlich geloescht - sicherheitshalber alle DBs sichern
                    $databases['cron_dbindex'] = -3;
                }
            }
        }
    }
    FillMultiDBArrays();
    //Parameter zusammensetzen
    $config['multipart_groesse'] = $config['multipartgroesse1'] * ($config['multipartgroesse2'] == 1 ? 1024 : 1024 * 1024);
    $param = $pars_all = '<?php ' . $nl;
    if (!isset($config['email_maxsize'])) {
        $config['email_maxsize'] = $config['email_maxsize1'] * ($config['email_maxsize2'] == 1 ? 1024 : 1024 * 1024);
    }
    if (!isset($config['cron_execution_path'])) {
        $config['cron_execution_path'] = "msd_cron/";
    }
    if ($as == 0) {
        $config['paths']['root'] = addslashes(Realpfad("./"));
    }
    $config['files']['parameter'] = $config['paths']['config'] . $config['config_file'] . '.php';
    $config['files']['iconpath'] = './css/' . $config['theme'] . '/icons/';
    foreach ($config as $var => $val) {
        if (!in_array($var, $config_dontsave)) {
            if (is_array($val)) {
                $pars_all .= '$config[\'' . $var . '\']=array();' . $nl;
                foreach ($val as $var2 => $val2) {
                    if ($config['magic_quotes_gpc'] == 1) {
                        $val2 = stripslashes($val2);
                    }
                    $pars_all .= '$config[\'' . $var . '\'][' . (is_int($var2) ? $var2 : "'" . $var2 . "'") . '] = \'' . my_addslashes($val2) . "';{$nl}";
                }
            } else {
                if ($config['magic_quotes_gpc'] == 1) {
                    $val = stripslashes($val);
                }
                if (!in_array($var, $config_dontsave)) {
                    $pars_all .= '$config[\'' . $var . '\'] = \'' . my_addslashes($val) . "';{$nl}";
                }
            }
        }
    }
    foreach ($databases as $var => $val) {
        if (is_array($val)) {
            $pars_all .= '$databases[\'' . $var . '\']=array();' . $nl;
            foreach ($val as $var2 => $val2) {
                if ($config['magic_quotes_gpc'] == 1 || $as == 1) {
                    $pars_all .= '$databases[\'' . $var . '\'][' . (is_int($var2) ? $var2 : "'" . $var2 . "'") . '] = \'' . my_addslashes(stripslashes($val2)) . "';{$nl}";
                } else {
                    $pars_all .= '$databases[\'' . $var . '\'][' . (is_int($var2) ? $var2 : "'" . $var2 . "'") . '] = \'' . my_addslashes($val2) . "';{$nl}";
                }
            }
        } else {
            if ($config['magic_quotes_gpc'] == 0 || $as == 1) {
                $pars_all .= '$databases[\'' . $var . '\'] = \'' . addslashes($val) . "';{$nl}";
            } else {
                $pars_all .= '$databases[\'' . $var . '\'] = \'' . $val . "';{$nl}";
            }
        }
    }
    $param .= '?>';
    $pars_all .= '?>';
    //Datei öffnen und schreiben
    $ret = true;
    $file = $config['paths']['config'] . $config['config_file'] . '.php';
    if ($fp = fopen($file, "wb")) {
        if (!fwrite($fp, $pars_all)) {
            $ret = false;
        }
        if (!fclose($fp)) {
            $ret = false;
        }
        @chmod($file, 0777);
    } else {
        $ret = false;
    }
    $ret = WriteCronScript($restore_values);
    return $ret;
}
Example #2
0
    $dump['filename_stamp'] = isset($_POST['filename_stamp']) ? $_POST['filename_stamp'] : '';
    $dump['anzahl_zeilen'] = isset($_POST['anzahl_zeilen']) ? $_POST['anzahl_zeilen'] : ($config['minspeed'] > 0 ? $config['minspeed'] : 50);
    $dump['dump_encoding'] = isset($_POST['dump_encoding']) ? urldecode($_POST['dump_encoding']) : '';
    if (isset($_GET['sel_dump_encoding'])) {
        // Erstaufruf -> encoding auswerten
        include_once './inc/functions_sql.php';
        get_sql_encodings();
        $encodingline = $config['mysql_possible_character_sets'][$_GET['sel_dump_encoding']];
        $encoding = explode(' ', $encodingline);
        $dump['dump_encoding'] = isset($encoding[0]) ? $encoding[0] : $encodingline;
    }
    include './inc/define_icons.php';
    $dump['tabellen_gesamt'] = 0;
}
$mp2 = array('Bytes', 'Kilobytes', 'Megabytes', 'Gigabytes');
FillMultiDBArrays();
if ($databases['db_actual_tableselected'] != '' && $config['multi_dump'] == 0) {
    $dump['tblArray'] = explode('|', $databases['db_actual_tableselected']);
    $tbl_sel = true;
    $msgTbl = sprintf($lang['L_NR_TABLES_SELECTED'], count($dump['tblArray']));
}
// Korrektur -> Multi-DB-Array ist gefuellt (damit die Infos in der Konfig nicht verloren gehen), aber Multidump ist nicht aktiviert)
if ($config['multi_dump'] == 0) {
    unset($databases['multi']);
    $databases['multi'] = array();
    $databases['multi'][0] = $databases['db_actual'];
} else {
    // wenn Multidump aktiviert ist, aber keine DB gewaehlt wurde -> aktuelle DB uebernehmen
    if (!isset($databases['multi'][0])) {
        $databases['multi'][0] = $databases['db_actual'];
    }
Example #3
0
function WriteParams($as = 0, $config, $databases)
{
    global $config_dontsave;
    $nl = "\n";
    FillMultiDBArrays();
    //Parameter zusammensetzen
    $config['multipart_groesse'] = $config['multipartgroesse1'] * ($config['multipartgroesse2'] == 1 ? 1024 : 1024 * 1024);
    $param = $pars_all = '<?php ' . $nl;
    if (!isset($config['email_maxsize'])) {
        $config['email_maxsize'] = $config['email_maxsize1'] * ($config['email_maxsize2'] == 1 ? 1024 : 1024 * 1024);
    }
    if (!isset($config['cron_execution_path'])) {
        $config['cron_execution_path'] = "msd_cron/";
    }
    if ($as == 0) {
        $config['paths']['root'] = addslashes(Realpfad("./"));
    }
    foreach ($config as $var => $val) {
        if (is_array($val)) {
            foreach ($val as $var2 => $val2) {
                if ($config['magic_quotes_gpc'] == 0 || $as == 1) {
                    $pars_all .= '$config[\'' . $var . '\'][' . (is_int($var2) ? $var2 : "'" . $var2 . "'") . '] = \'' . addslashes($val2) . "';{$nl}";
                } else {
                    $pars_all .= '$config[\'' . $var . '\'][' . (is_int($var2) ? $var2 : "'" . $var2 . "'") . '] = \'' . $val2 . "';{$nl}";
                }
            }
        } else {
            if ($config['magic_quotes_gpc'] == 0 || $as == 1) {
                if (!in_array($var, $config_dontsave)) {
                    $pars_all .= '$config[\'' . $var . '\'] = \'' . addslashes($val) . "';{$nl}";
                }
            } else {
                if (!in_array($var, $config_dontsave)) {
                    $pars_all .= '$config[\'' . $var . '\'] = \'' . $val . "';{$nl}";
                }
            }
        }
    }
    foreach ($databases as $var => $val) {
        if (is_array($val)) {
            foreach ($val as $var2 => $val2) {
                if ($config['magic_quotes_gpc'] == 0 || $as == 1) {
                    $pars_all .= '$databases[\'' . $var . '\'][' . (is_int($var2) ? $var2 : "'" . $var2 . "'") . '] = \'' . addslashes($val2) . "';{$nl}";
                } else {
                    $pars_all .= '$databases[\'' . $var . '\'][' . (is_int($var2) ? $var2 : "'" . $var2 . "'") . '] = \'' . $val2 . "';{$nl}";
                }
            }
        } else {
            if ($config['magic_quotes_gpc'] == 0 || $as == 1) {
                $pars_all .= '$databases[\'' . $var . '\'] = \'' . addslashes($val) . "';{$nl}";
            } else {
                $pars_all .= '$databases[\'' . $var . '\'] = \'' . $val . "';{$nl}";
            }
        }
    }
    $param .= '?>';
    $pars_all .= '?>';
    //Datei öffnen und schreiben
    $ret = true;
    @chmod($config['files']['parameter'], 0777);
    if ($fp = fopen($config['files']['parameter'], "wb")) {
        if (!fwrite($fp, $pars_all)) {
            $ret = false;
        }
        if (!fclose($fp)) {
            $ret = false;
        }
    } else {
        $ret = false;
    }
    $ret = WriteCronScript($config, $databases);
    return $ret;
}