示例#1
0
    $loginfo['errorlog'] = $config['paths']['log'] . "error.log";
}
$loginfo['log_size'] += @filesize($loginfo['log']);
$sum += $loginfo['log_size'];
$loginfo['perllog_size'] += @filesize($loginfo['perllog']);
$sum += $loginfo['perllog_size'];
$loginfo['perllogcomplete_size'] += @filesize($loginfo['perllogcomplete']);
$sum += $loginfo['perllogcomplete_size'];
$loginfo['errorlog_size'] += @filesize($loginfo['errorlog']);
$sum += $loginfo['errorlog_size'];
$loginfo['log_totalsize'] += $sum;
$tplLog->assign_vars(array('ICON_VIEW' => $icon['view'], 'ICON_OPEN_FILE' => $icon['open_file'], 'ICON_DELETE' => $icon['delete'], 'ICON_ARROW_DOWN' => $icon['arrow_down'], 'ICON_ARROW_UP' => $icon['arrow_up'], 'ICON_SORT' => $revers == 0 ? $icon['arrow_up'] : $icon['arrow_down'], 'SORT_ORDER' => $revers == 0 ? 1 : 0, 'LOG' => str_replace($config['paths']['log'], '', $lfile)));
$tplLog->assign_vars(array('LOGPATH' => $config['paths']['log'], 'PHPLOG' => str_replace($config['paths']['log'], '', $loginfo['log']), 'PHPLOG_SIZE' => byteOutput($loginfo['log_size'])));
if (@file_exists($loginfo['errorlog'])) {
    $outErrLog = str_replace($config['paths']['log'], '', $loginfo['errorlog']);
    $tplLog->assign_block_vars('ERRORLOG', array('ERRORLOG' => $outErrLog, 'SIZE' => byteOutput($loginfo['errorlog_size'])));
} else {
    $tplLog->assign_vars(array('ERRORLOG_DISABLED' => Html::getDisabled(true, true)));
}
if (@file_exists($loginfo['perllog'])) {
    $perl = str_replace($config['paths']['log'], '', $loginfo['perllog']);
    $tplLog->assign_block_vars('PERLLOG', array('FILE_NAME' => $perl, 'SIZE' => byteOutput($loginfo['perllog_size'])));
} else {
    $tplLog->assign_vars(array('PERLLOG_DISABLED' => Html::getDisabled(true, true)));
}
if (@file_exists($loginfo['perllogcomplete'])) {
    $perlComplete = str_replace($config['paths']['log'], '', $loginfo['perllogcomplete']);
    $tplLog->assign_block_vars('PERLCOMPLETELOG', array('FILE_NAME' => $perlComplete, 'SIZE' => byteOutput($loginfo['perllogcomplete_size'])));
} else {
    $tplLog->assign_vars(array('PERLCOMPLETELOG_DISABLED' => Html::getDisabled(true, true)));
}
 unset($databases);
 $databases = array();
 getConfig($c);
 $rowclass = $i % 2 ? 'dbrow' : 'dbrow1';
 if ($oldConfig == $c) {
     $rowclass = 'dbrowsel';
     // highlight active configuration
 }
 // Generate configuration output
 $outputstringMultisettings = '';
 $dbsToBackup = array();
 // look up which databases are set to be dumped
 prepareDumpProcess();
 $dbs = array_keys($dump['databases']);
 $dbsToBackup = implode(', ', $dbs);
 $tplConfigurationConfigFiles->assign_block_vars('ROW', array('ROWCLASS' => $rowclass, 'NR' => $i, 'CONFIG_ID' => sprintf("%03d", $i), 'CONFIG_NAME' => $c, 'CONFIG_NAME_URLENCODED' => urlencode($c), 'DB_HOST' => $config['dbhost'], 'DB_USER' => $config['dbuser'], 'NR_OF_DATABASES' => sizeof($databases), 'DBS_TO_BACKUP' => $dbsToBackup . ' ', 'ATTACH_BACKUP' => $config['email']['attach_backup'] == 1 ? $lang['L_YES'] : $lang['L_NO']));
 if (count($databases) > 0) {
     $a = 1;
     foreach ($databases as $dbName => $val) {
         $tplConfigurationConfigFiles->assign_block_vars('ROW.LIST_DBS', array('ROWCLASS' => $a % 2 ? 'dbrow' : 'dbrow1', 'NR' => $a, 'DB_NAME_URLENCODED' => base64_encode($dbName), 'DB_NAME' => $dbName));
         $a++;
     }
 }
 // is Multipart used?
 if ($config['multi_part'] == 1) {
     $tplConfigurationConfigFiles->assign_block_vars('ROW.USE_MULTIPART', array('MULTIPART_FILESIZE' => byteOutput($config['multipart_groesse'])));
 }
 // send mail after backup?
 if ($config['send_mail'] == 1) {
     $recipientsCc = implodeSubarray($config['email']['recipient_cc'], 'address');
     if ($config['email']['recipient_name'] > '') {
            $config['dbport'] = (int) $_POST['dbport'];
        } else {
            $config['dbport'] = 3306;
        }
        $config['dbsocket'] = $_POST['dbsocket'];
        include './inc/classes/db/MsdDbFactory.php';
        $dbo = MsdDbFactory::getAdapter($config['dbhost'], $config['dbuser'], $config['dbpass'], $config['dbport'], $config['dbsocket']);
        $connectMsg = $dbo->dbConnect();
        if ($connectMsg === true) {
            if ($config['dbmanual'] > '') {
                $dbDetect = searchDatabases(1, $config['dbmanual']);
            } else {
                $dbDetect = searchDatabases(1);
            }
        } else {
            $tpl->assign_block_vars('CONNECTION_ERROR', array('MSG' => SQLError('', $connectMsg, true)));
            $dbDetect = false;
        }
        if (false !== $dbDetect) {
            $saveButton = str_replace('\'', '\\\'', $lang['L_SAVEANDCONTINUE']);
            $tpl->assign_block_vars('CONTINUE', array('SAVE_AND_CONTINUE' => $saveButton));
            $tpl->assign_block_vars('OK', array());
            $tpl->assign_block_vars('CONNECTION_OK', array('RESULT' => $dbDetect));
            if (count($databases) == 0) {
                $tpl->assign_block_vars('CONNECTION_OK_BUT_NO_DB', array());
            }
        }
    }
    $tpl->assign_vars(array('SESSION_ID' => session_id(), 'DB_HOST' => $config['dbhost'], 'DB_USER' => $config['dbuser'], 'DB_PASS' => $config['dbpass'], 'DB_MANUAL' => $config['dbmanual'], 'ICON_OK' => $icon['ok']));
    $tpl->pparse('show');
}
示例#4
0
 * http://www.mysqldumper.net
 *
 * @package         MySQLDumper
 * @version         SVN: $rev: 1207 $
 * @author          $Author$
 * @lastmodified    $Date$
 */
include './language/lang_list.php';
$langOld = $config['language'];
// define template
$tplMenu = new MSDTemplate();
$tplMenu->set_filenames(array('tplMenu' => 'tpl/menu/menu.tpl'));
$tplMenu->assign_vars(array('PAGE' => $p, 'ACTION_SET' => $action > '' ? '&action=' . $action : '', 'MSD_VERSION' => MSD_VERSION . ' (' . MSD_VERSION_SUFFIX . ')', 'CONFIG_HOMEPAGE' => $config['homepage'], 'CONFIG_THEME' => $config['theme'], 'CONFIG_FILE' => $config['config_file']));
// set picture according to mode
if ($config['msd_mode'] == 0) {
    $tplMenu->assign_block_vars('MSD_MODE_EASY', array());
} else {
    $tplMenu->assign_block_vars('MSD_MODE_EXPERT', array());
}
if (isset($_POST['selected_config']) || isset($_GET['config'])) {
    // Configuration was switched in menu frame
    if (isset($_POST['selected_config'])) {
        $newConfig = $_POST['selected_config'];
    }
    if (is_readable($config['paths']['config'] . $newConfig . '.php')) {
        clearstatcache();
        unset($databases);
        $databases = array();
        if (getConfig($newConfig)) {
            $config['config_file'] = $newConfig;
            $_SESSION['config_file'] = $newConfig;
    $selectedFilter = $_POST['filter_selected'];
}
$vars = array();
$res = $dbo->query('SHOW VARIABLES', MsdDbFactory::ARRAY_ASSOC);
$numrows = @sizeof($res);
foreach ($res as $row) {
    $vars[$row['Variable_name']] = $row['Value'];
}
$filter = getPrefixArray($vars);
$tplSqlbrowserGeneralMysqlVariables = new MSDTemplate();
$tplSqlbrowserGeneralMysqlVariables->set_filenames(array('tplSqlbrowserGeneralMysqlVariables' => 'tpl/sqlbrowser/general/mysqlVariables.tpl'));
$tplSqlbrowserGeneralMysqlVariables->assign_vars(array('SEL_FILTER' => Html::getOptionlist($filter, $selectedFilter)));
if (count($vars) == 0) {
    $tpl->assign_block_vars('NO_VALUES', array());
} else {
    $i = 0;
    foreach ($vars as $name => $val) {
        if ($selectedFilter != '-1' && substr($name, 0, strlen($selectedFilter)) != $selectedFilter) {
            continue;
        }
        if (is_numeric($val)) {
            if (strpos($name, 'time') === false) {
                $val = String::formatNumber($val);
            } else {
                $val = getTimeFormat($val);
            }
        }
        $tplSqlbrowserGeneralMysqlVariables->assign_block_vars('ROW', array('ROWCLASS' => $i % 2 ? 'dbrow' : 'dbrow1', 'NR' => $i + 1, 'VAR_NAME' => $name, 'VAR_VALUE' => htmlspecialchars($val, ENT_COMPAT, 'UTF-8')));
        $i++;
    }
}
            $saved = fputs($f, $htpasswd);
            fclose($f);
        }
        // save .htaccess
        if (false !== $saved) {
            $f = @fopen('.htaccess', 'w');
            if ($f) {
                $saved = fputs($f, $htaccess);
                fclose($f);
            } else {
                $saved = false;
            }
        }
        if (false !== $saved) {
            $msg = $lang['L_HTACC_CREATED'];
            $tplHomeProtectionCreate->assign_block_vars('CREATE_SUCCESS', array('HTACCESS' => nl2br(Html::replaceQuotes($htaccess)), 'HTPASSWD' => nl2br(Html::replaceQuotes($htpasswd))));
            @chmod($config['paths']['root'], 0755);
        } else {
            $tplHomeProtectionCreate->assign_block_vars('CREATE_ERROR', array('HTACCESS' => Html::replaceQuotes($htaccess), 'HTPASSWD' => Html::replaceQuotes($htpasswd)));
        }
    }
}
if (sizeof($error) > 0 || !isset($_POST['username'])) {
    $tplHomeProtectionCreate->assign_vars(array('PASSWORDS_UNEQUAL' => Html::getJsQuote($lang['L_PASSWORDS_UNEQUAL']), 'HTACC_CONFIRM_DELETE' => Html::getJsQuote($lang['L_HTACC_CONFIRM_DELETE'])));
    $tplHomeProtectionCreate->assign_block_vars('INPUT', array('USERNAME' => Html::replaceQuotes($username), 'USERPASS1' => Html::replaceQuotes($userpassOne), 'USERPASS2' => Html::replaceQuotes($userpassConfirm), 'TYPE0_CHECKED' => Html::getChecked($type, 0), 'TYPE1_CHECKED' => Html::getChecked($type, 1), 'TYPE2_CHECKED' => Html::getChecked($type, 2), 'TYPE3_CHECKED' => Html::getChecked($type, 3)));
}
if (!empty($error)) {
    $msg = '<span class="error">' . implode('<br />', $error) . '</span>';
}
if ($msg > '') {
    $tplHomeProtectionCreate->assign_block_vars('MSG', array('TEXT' => $msg));
示例#7
0
            $saved = fputs($file_htpasswd, $htpasswd);
            fclose($file_htpasswd);
        }
        // save .htaccess
        if (false !== $saved) {
            $file_htaccess = @fopen('.htaccess', 'w');
            if ($file_htaccess) {
                $saved = fputs($file_htaccess, $htaccess);
                fclose($file_htaccess);
            } else {
                $saved = false;
            }
        }
        if (false !== $saved) {
            $msg = $lang['L_HTACC_CREATED'];
            $tpl->assign_block_vars('CREATE_SUCCESS', array('HTACCESS' => nl2br(my_quotes($htaccess)), 'HTPASSWD' => nl2br(my_quotes($htpasswd))));
            @chmod($config['paths']['root'], 0755);
        } else {
            $tpl->assign_block_vars('CREATE_ERROR', array('HTACCESS' => nl2br(my_quotes($htaccess)), 'HTPASSWD' => nl2br(my_quotes($htpasswd))));
        }
    }
}
if (sizeof($error) > 0 || !isset($_POST['username'])) {
    $tpl->assign_vars(array('PASSWORDS_UNEQUAL' => my_addslashes($lang['L_PASSWORDS_UNEQUAL']), 'HTACC_CONFIRM_DELETE' => my_addslashes($lang['L_HTACC_CONFIRM_DELETE'])));
    $tpl->assign_block_vars('INPUT', array('USERNAME' => my_quotes($username), 'USERPASS1' => my_quotes($userpass1), 'USERPASS2' => my_quotes($userpass2), 'TYPE0_CHECKED' => $type == 0 ? ' checked="checked"' : '', 'TYPE1_CHECKED' => $type == 1 ? ' checked="checked"' : '', 'TYPE2_CHECKED' => $type == 2 ? ' checked="checked"' : '', 'TYPE3_CHECKED' => $type == 3 ? ' checked="checked"' : ''));
}
if (sizeof($error) > 0) {
    $msg = '<span class="error">' . implode('<br>', $error) . '</span>';
}
if ($msg > '') {
    $tpl->assign_block_vars('MSG', array('TEXT' => $msg));
include './inc/runtime.php';
include './inc/mysql.php';
include './inc/functions/functions_global.php';
include './lib/template.php';
include './inc/functions/functions_restore.php';
include './lib/json.php';
obstart(true);
include './inc/functions/functions_sql.php';
$tplSqlbrowserTableShowTabledataEntry = new MSDTemplate();
$tplSqlbrowserTableShowTabledataEntry->set_filenames(array('tpl_sqlbrowser_table_show_tabledata' => './tpl/sqlbrowser/table/edit_field.tpl'));
/*
 * Fetch and check _GET variables
 */
$validModes = array('new');
$db = isset($_GET['db']) ? base64_decode($_GET['db']) : $config['db_actual'];
$tablename = isset($_GET['tablename']) ? base64_decode($_GET['tablename']) : '';
$fieldname = isset($_GET['fieldname']) ? base64_decode($_GET['fieldname']) : '';
$rowKey = isset($_GET['key']) ? base64_decode($_GET['key']) : '';
$mode = 'new';
if (isset($_GET['do']) && in_array($_GET['do'], $validModes)) {
    $mode = $_GET['do'];
}
$tableInfos = getExtendedFieldInfo($db, $tablename);
$tplSqlbrowserTableShowTabledataEntry->assign_vars(array('MODE' => $mode));
$row = array();
if ($mode == 'EDIT') {
    //TODO implement :)
}
$tplSqlbrowserTableShowTabledataEntry->assign_block_vars('FOOTER_' . $mode, array());
$tplSqlbrowserTableShowTabledataEntry->pparse('tpl_sqlbrowser_table_show_tabledata');
obend(true);
 *
 * @package         MySQLDumper
 * @version         SVN: $rev: 1207 $
 * @author          $Author$
 * @lastmodified    $Date$
 */
if (!defined('MSD_VERSION')) {
    die('No direct access.');
}
include './inc/define_icons.php';
$hta = '';
$tplHomeProtectionEdit = new MSDTemplate();
$tplHomeProtectionEdit->set_filenames(array('tplHomeProtectionEdit' => 'tpl/home/protection_edit.tpl'));
if (isset($_POST['hta_content'])) {
    if ($fp = fopen('./.htaccess', 'w')) {
        if (fwrite($fp, $_POST['hta_content'])) {
            $tplHomeProtectionEdit->assign_block_vars('HTA_SAVED_SUCCESSFULLY', array());
        } else {
            $tplHomeProtectionEdit->assign_block_vars('HTA_SAVED_UNSUCCESSFULLY', array());
        }
        fclose($fp);
    } else {
        $tplHomeProtectionEdit->assign_block_vars('ERROR_OPENING_HTACCESS', array());
    }
}
if (file_exists('./.htaccess') && is_readable('./.htaccess')) {
    $hta = implode('', file('./.htaccess'));
} else {
    $tplHomeProtectionEdit->assign_block_vars('ERROR_OPENING_HTACCESS', array());
}
$tplHomeProtectionEdit->assign_vars(array('HTA_CONTENT' => htmlspecialchars($hta, ENT_COMPAT, 'UTF-8'), 'ICON_SEARCH' => $icon['search'], 'ICON_OPEN_FILE' => $icon['small']['open_file'], 'ICON_SAVE' => $icon['small']['save'], 'ICON_DELETE' => $icon['delete'], 'ICON_ARROW_LEFT' => $icon['arrow_left']));
示例#10
0
                $table_selected = $i;
            }
            $table_options .= '>' . $tables[$i] . '</option>' . "\n";
        }
    }
}
$tpl = new MSDTemplate();
$tpl->set_filenames(array('show' => './tpl/sqlbrowser/mysql_search.tpl'));
$tpl->assign_vars(array('DB_NAME_URLENCODED' => urlencode($db), 'LANG_SQLSEARCH' => $lang['L_SQL_SEARCH'], 'LANG_SQL_SEARCHWORDS' => $lang['L_SQL_SEARCHWORDS'], 'SUCHBEGRIFFE' => $suchbegriffe, 'LANG_START_SQLSEARCH' => $lang['L_START_SQL_SEARCH'], 'LANG_RESET_SEARCHWORDS' => $lang['L_RESET_SEARCHWORDS'], 'LANG_SEARCH_OPTIONS' => $lang['L_SEARCH_OPTIONS'], 'AND_SEARCH' => $suchart == 'AND' ? ' checked' : '', 'OR_SEARCH' => $suchart == 'OR' ? ' checked' : '', 'CONCAT_SEARCH' => $suchart == 'CONCAT' ? ' checked' : '', 'TABLE_OPTIONS' => $table_options, 'LANG_SEARCH_OPTIONS_AND' => $lang['L_SEARCH_OPTIONS_AND'], 'LANG_SEARCH_OPTIONS_OR' => $lang['L_SEARCH_OPTIONS_OR'], 'LANG_SEARCH_OPTIONS_CONCAT' => $lang['L_SEARCH_OPTIONS_CONCAT'], 'LANG_SEARCH_IN_TABLE' => $lang['L_SEARCH_IN_TABLE']));
$max_treffer = 20;
$treffer = mysql_search($db, $table_selected, $suchbegriffe, $suchart, $offset, $max_treffer + 1);
if (is_array($treffer) && isset($treffer[0])) {
    $search_message = sprintf($lang['L_SEARCH_RESULTS'], $suchbegriffe, $tables[$table_selected]);
    $anzahl_treffer = count($treffer);
    // Blaettern-Buttons
    $tpl->assign_block_vars('HITS', array('LANG_SEARCH_RESULTS' => $search_message, 'LAST_OFFSET' => $offset - $max_treffer, 'BACK_BUTTON_DISABLED' => $offset > 0 ? '' : ' disabled', 'NEXT_OFFSET' => $offset + $max_treffer, 'NEXT_BUTTON_DISABLED' => $anzahl_treffer != $max_treffer + 1 ? ' disabled' : '', 'LANG_ACCESS_KEYS' => $lang['L_SEARCH_ACCESS_KEYS']));
    // Ausgabe der Treffertabelle
    $anzahl_felder = sizeof($treffer[0]);
    // Ausgabe der Tabellenueberschrift/ Feldnamen
    foreach ($treffer[0] as $key => $val) {
        $tpl->assign_block_vars('HITS.TABLEHEAD', array('KEY' => $key));
    }
    // Ausgabe der Daten
    $zeige_treffer = sizeof($treffer);
    if ($zeige_treffer == $max_treffer + 1) {
        $zeige_treffer = $max_treffer;
    }
    // built key - does a primary key exist?
    $fieldinfos = getExtendedFieldinfo($db, $tables[$table_selected]);
    //v($fieldinfos);
    // auf zusammengesetzte Schlüssel untersuchen
<?php

// insert a new record
$tpl = new MSDTemplate();
$tpl->set_filenames(array('show' => './tpl/sqlbrowser/sql_record_insert_inputmask.tpl'));
$sqledit = "SHOW FIELDS FROM `{$tablename}`";
$res = MSD_query($sqledit);
$num = mysql_numrows($res);
$feldnamen = "";
for ($x = 0; $x < $num; $x++) {
    $row = mysql_fetch_object($res);
    $feldnamen .= $row->Field . '|';
    $tpl->assign_block_vars('ROW', array('CLASS' => $x % 2 ? 1 : 2, 'FIELD_NAME' => $row->Field, 'FIELD_ID' => correct_post_index($row->Field)));
    $type = strtoupper($row->Type);
    if (strtoupper($row->Null) == 'YES') {
        //field is nullable
        $tpl->assign_block_vars('ROW.IS_NULLABLE', array());
    }
    if (in_array($type, array('BLOB', 'TEXT'))) {
        $tpl->assign_block_vars('ROW.IS_TEXTAREA', array());
    } else {
        $tpl->assign_block_vars('ROW.IS_TEXTINPUT', array());
    }
}
$tpl->assign_vars(array('HIDDEN_FIELDS' => FormHiddenParams(), 'FIELDNAMES' => substr($feldnamen, 0, strlen($feldnamen) - 1), 'SQL_STATEMENT' => my_quotes($sql['sql_statement'])));
$tpl->pparse('show');
示例#12
0
 * @lastmodified    $Date$
 */
if (!defined('MSD_VERSION')) {
    die('No direct access.');
}
$tplSqlbrowserGeneralProcess = new MSDTemplate();
$tplSqlbrowserGeneralProcess->set_filenames(array('tplSqlbrowserGeneralProcess' => 'tpl/sqlbrowser/general/process.tpl'));
$killid = 0;
if (isset($_GET['killid']) && $_GET['killid'] > 0) {
    $killid = (int) $_GET['killid'];
    if (isset($_POST['killid'])) {
        intval($killid = $_POST['killid']);
    }
    $wait = isset($_POST['wait']) ? $_POST['wait'] : 0;
    if ($wait == 0) {
        $tplSqlbrowserGeneralProcess->assign_block_vars('KILL_STARTED', array('KILL_ID' => $killid));
        $wait = $config['refresh_processlist'];
        try {
            $ret = $dbo->query('KILL ' . $_GET['killid'], MsdDbFactory::SIMPLE);
        } catch (Exception $e) {
            $tplSqlbrowserGeneralProcess->assign_block_vars('KILL_ERROR', array('MESSAGE' => '(' . $e->getCode() . ') ' . $e->getMessage()));
        }
    } else {
        $tplSqlbrowserGeneralProcess->assign_block_vars('KILL_WAIT', array('KILL_ID' => $killid, 'WAIT_TIME' => $wait));
        $wait += $config['refresh_processlist'];
    }
}
$res = $dbo->query('SHOW FULL PROCESSLIST', MsdDbFactory::ARRAY_NUMERIC);
$numrows = (int) @sizeof($res);
if ($numrows == 0) {
    $tplSqlbrowserGeneralProcess->assign_block_vars('NO_PROCESS', array());
/**
 * This file is part of MySQLDumper released under the GNU/GPL 2 license
 * http://www.mysqldumper.net
 *
 * @package         MySQLDumper
 * @version         SVN: $rev: 1205 $
 * @author          $Author$
 * @lastmodified    $Date$
 * @filesource      $URL$
 */
echo 'bla';
die;
if (!defined('MSD_VERSION')) {
    die('No direct access.');
}
$checkit = isset($_GET['checkit']) ? base64_decode($_GET['checkit']) : '';
$repair = isset($_GET['repair']) ? base64_decode($_GET['repair']) : 0;
$tables = isset($_POST['table']) ? $_POST['table'] : array();
$sort_by_column = isset($_POST['sort_by_column']) ? $_POST['sort_by_column'] : 'name';
$sort_direction = isset($_POST['sort_direction']) ? $_POST['sort_direction'] : 'a';
$db = isset($_GET['db']) ? base64_decode($_GET['db']) : $config['db_actual'];
$tablename = isset($_GET['tablename']) ? base64_decode($_GET['tablename']) : '';
mysql_select_db($db, $config['dbconnection']);
$table_infos = getExtendedFieldInfo($db, $tablename);
//v($table_infos);
$tpl_sqlbrowser_table_edit_table = new MSDTemplate();
$tpl_sqlbrowser_table_edit_table->set_filenames(array('tpl_sqlbrowser_table_edit_field' => 'tpl/sqlbrowser/table/edit_field.tpl'));
$tpl_sqlbrowser_table_edit_table->assign_vars(array('DB' => $db, 'TABLE' => $tablename));
$tpl_sqlbrowser_table_edit_table->assign_block_vars('ROW', array());
示例#14
0
         $sumFiles++;
         $sumSize += filesize($config['paths']['backup'] . $fileName);
         $ft = filectime($config['paths']['backup'] . $fileName);
         if (!isset($lastBu[2]) || isset($lastBu[2]) && $ft > $lastBu[2]) {
             $lastBu[0] = $fileName;
             $lastBu[1] = date("d.m.Y H:i", $ft);
             $lastBu[2] = $ft;
         }
     }
 }
 $directoryWarnings = checkDirectories();
 $tplHome = new MSDTemplate();
 $tplHome->set_filenames(array('tplHome' => 'tpl/home/home.tpl'));
 $tplHome->assign_vars(array('ICON_EDIT' => $icon['edit'], 'ICON_DELETE' => $icon['delete'], 'ICON_SEARCH' => $icon['search'], 'THEME' => $config['theme'], 'MSD_VERSION' => MSD_VERSION . ' (' . MSD_VERSION_SUFFIX . ')', 'OS' => MSD_OS, 'OS_EXT' => MSD_OS_EXT, 'MYSQL_VERSION' => MSD_MYSQL_VERSION, 'MYSQL_CLIENT_VERSION' => $dbo->getClientInfo(), 'PHP_VERSION' => PHP_VERSION, 'MEMORY' => byteOutput($config['php_ram'] * 1024 * 1024), 'MAX_EXECUTION_TIME' => intval(@get_cfg_var('max_execution_time')), 'MAX_EXEC_USED_BY_MSD' => $config['max_execution_time'], 'PHP_EXTENSIONS' => $config['phpextensions'], 'SERVER_NAME' => $_SERVER['SERVER_NAME'], 'MSD_PATH' => $config['paths']['root'], 'DB' => $config['db_actual'], 'NR_OF_BACKUP_FILES' => $sumFiles, 'SIZE_BACKUPS' => byteOutput($sumSize), 'FREE_DISKSPACE' => getFreeDiskSpace()));
 if ($directoryWarnings > '') {
     $tplHome->assign_block_vars('DIRECTORY_WARNINGS', array('MSG' => $directoryWarnings));
 }
 if ($config['disabled'] > '') {
     $tplHome->assign_block_vars('DISABLED_FUNCTIONS', array('PHP_DISABLED_FUNCTIONS' => str_replace(',', ', ', $config['disabled'])));
 }
 // Zlib is buggy from version 4.3.0 upto 4.3.2,
 // so lets check for these versions
 if (version_compare(PHP_VERSION, '4.3.0', '>=') && version_compare(PHP_VERSION, '4.3.2', '<=')) {
     $tplHome->assign_block_vars('ZLIBBUG', array());
 }
 if (!extension_loaded('ftp')) {
     $tplHome->assign_block_vars('NO_FTP', array());
 }
 if (!$config['zlib']) {
     $tplHome->assign_block_vars('NO_ZLIB', array());
 }
            try {
                $dbo->selectDb($dbToAdd, true);
                addDatabaseToConfig($dbToAdd);
                $saveConfig = true;
            } catch (Exception $e) {
                $addDbMessage = $lang['L_ERROR'] . ': (' . $e->getCode() . ') ';
                $addDbMessage .= $e->getMessage();
            }
        }
    }
}
$tplConfigurationDatabases = new MSDTemplate();
$tplConfigurationDatabases->set_filenames(array('tplConfigurationDatabases' => 'tpl/configuration/databases.tpl'));
$tplConfigurationDatabases->assign_vars(array('ICON_SAVE' => $icon['small']['save'], 'DB_HOST' => $config['dbhost'], 'DB_USER' => $config['dbuser'], 'DB_PASS' => $config['dbpass'], 'DB_PORT' => $config['dbport'], 'DB_SOCKET' => $config['dbsocket'], 'ICON_EDIT' => $icon['edit'], 'ICON_DOWN' => $icon['arrow_down'], 'ICON_PLUS' => $icon['plus'], 'ICON_MINUS' => $icon['minus']));
if (isset($addDbMessage) && $addDbMessage > '') {
    $tplConfigurationDatabases->assign_block_vars('MANUAL_DB_ADD', array('MESSAGE' => $addDbMessage));
}
//Wenn Datenbanken vorhanden sind
if (count($databases) > 0) {
    $dbCount = count($databases);
    $tplConfigurationDatabases->assign_block_vars('DBS', array('DB_COUNT' => $dbCount));
    $i = 0;
    foreach ($databases as $dbName => $val) {
        if (!isset($val['dump'])) {
            $val['dump'] = 0;
        }
        if (!isset($val['prefix'])) {
            $val['prefix'] = '';
        }
        $rowclass = $i % 2 ? 'dbrow' : 'dbrow1';
        if ($dbName == $config['db_actual']) {
    $query = "SELECT * FROM `{$tablename}` WHERE {$rowKey}";
    $row = $dbo->query($query, MsdDbFactory::ARRAY_ASSOC);
    if (false === $row || !isset($row[0])) {
        //TODO clean error handling
        echo "<h2>Keine Datensätze gefunden!</h2>";
        obend(true);
        exit;
    } elseif (count($row) > 1) {
        // TODO clean error handling
        echo "<h2>Mehrere Datensätze gefunden!</h2>";
    }
    $row = $row[0];
} elseif ($mode == 'NEW') {
    foreach ($tableInfos as $key => $val) {
        if (isset($val['field'])) {
            $row[$val['field']] = '';
        }
    }
}
foreach ($row as $key => $value) {
    $keyComment = '';
    if (isset($tableInfos[$key]['comment'])) {
        $keyComment = $tableInfos[$key]['comment'];
    }
    $templateVars = array('NAME' => htmlspecialchars($key), 'KEY' => base64_encode($key), 'KEY_COMMENT' => Html::getJsQuote($keyComment), 'VALUE' => htmlspecialchars($value));
    $tplSqlbrowserTableShowTabledataEntry->assign_block_vars('FIELD_' . ($mode == 'VIEW' ? 'VIEW' : 'EDIT'), $templateVars);
}
$templateVars = array('RECORD_KEY' => base64_encode($rowKey));
$tplSqlbrowserTableShowTabledataEntry->assign_block_vars('FOOTER_' . $mode, $templateVars);
$tplSqlbrowserTableShowTabledataEntry->pparse('tplSqlbrowserTableShowTabledataEntry');
obend(true);
示例#17
0
    }
    if (isset($_POST['smtp_port'])) {
        $config['smtp_port'] = (int) $_POST['smtp_port'];
    }
    if (isset($_POST['smtp_pop3_server'])) {
        $config['smtp_pop3_server'] = (string) $_POST['smtp_pop3_server'];
    }
    if (isset($_POST['smtp_pop3_port'])) {
        $config['smtp_pop3_port'] = (int) $_POST['smtp_pop3_port'];
    }
}
// backwards compatibilty with older configurations
if (!isset($config['email_maxsize1'])) {
    $config['email_maxsize1'] = 0;
}
if (!isset($config['email_maxsize2'])) {
    $config['email_maxsize2'] = 1;
}
$tplConfigurationEmail = new MSDTemplate();
$tplConfigurationEmail->set_filenames(array('tplConfigurationEmail' => 'tpl/configuration/email.tpl'));
$tplConfigurationEmail->assign_vars(array('ICON_SAVE' => $icon['small']['save'], 'ICON_PLUS' => $icon['plus'], 'ICON_DELETE' => $icon['delete'], 'SEND_MAIL_ENABLED_SELECTED' => Html::getChecked($config['send_mail'], 1), 'EMAIL_DISABLED' => Html::getDisabled($config['send_mail'], 0), 'SEND_MAIL_DISABLED_SELECTED' => Html::getChecked($config['send_mail'], 0), 'EMAIL_RECIPIENT_NAME' => Html::replaceQuotes($config['email']['recipient_name']), 'EMAIL_RECIPIENT_ADDRESS' => Html::replaceQuotes($config['email']['recipient_address']), 'EMAIL_SENDER_NAME' => Html::replaceQuotes($config['email']['sender_name']), 'EMAIL_SENDER_ADDRESS' => Html::replaceQuotes($config['email']['sender_address']), 'ATTACH_BACKUP_ENABLED_SELECTED' => Html::getChecked($config['email']['attach_backup'], 1), 'ATTACH_BACKUP_DISABLED_SELECTED' => Html::getChecked($config['email']['attach_backup'], 0), 'MAXSIZE_DISABLED' => Html::getDisabled($config['email']['attach_backup'], 0), 'EMAIL_MAXSIZE' => $config['email_maxsize1'], 'EMAIL_UNIT_SIZE_KB_SELECTED' => Html::getSelected($config['email_maxsize2'], 1), 'EMAIL_UNIT_SIZE_MB_SELECTED' => Html::getSelected($config['email_maxsize2'], 2), 'EMAIL_USE_PHPMAIL_SELECTED' => Html::getChecked($config['use_mailer'], 0), 'EMAIL_USE_SENDMAIL_SELECTED' => Html::getChecked($config['use_mailer'], 1), 'EMAIL_USE_SMTP_SELECTED' => Html::getChecked($config['use_mailer'], 2), 'SENDMAIL_CALL' => Html::replaceQuotes($config['sendmail_call']), 'SMTP_SERVER' => $config['smtp_server'], 'SMTP_USER' => $config['smtp_user'], 'SMTP_PASS' => $config['smtp_pass'], 'SMTP_AUTH_DISABLED' => Html::getDisabled($config['smtp_useauth'], 0), 'SMTP_AUTH_SELECTED' => Html::getChecked($config['smtp_useauth'], 1), 'SMTP_AUTH_NOT_SELECTED' => Html::getChecked($config['smtp_useauth'], 0), 'SMTP_SSL_SELECTED' => Html::getChecked($config['smtp_usessl'], 1), 'SMTP_SSL_NOT_SELECTED' => Html::getChecked($config['smtp_usessl'], 0), 'SMTP_PORT' => $config['smtp_port'], 'SMTP_POP3_SERVER' => $config['smtp_pop3_server'], 'SMTP_POP3_PORT' => $config['smtp_pop3_port']));
if ($config['smtp_useauth'] == 0) {
    $tplConfigurationEmail->assign_block_vars('HIDE_SMTP_AUTH_FIELDS', array());
}
if (is_array($config['email']['recipient_cc']) && sizeof($config['email']['recipient_cc']) > 0) {
    foreach ($config['email']['recipient_cc'] as $key => $val) {
        $confirmRecDelete = sprintf($lang['L_CONFIRM_RECIPIENT_DELETE'], $val['name'] . ' ' . $val['address']);
        $confirmRecDelete = Html::replaceQuotes($confirmRecDelete);
        $tplConfigurationEmail->assign_block_vars('EMAIL_RECIPIENT_CC', array('NR' => $key, 'CONFIRM_RECIPIENT_DELETE' => $confirmRecDelete, 'EMAIL_RECIPIENT_CC_NAME' => Html::replaceQuotes($val['name']), 'EMAIL_RECIPIENT_CC_ADDRESS' => Html::replaceQuotes($val['address'])));
    }
}
$tpl = new MSDTemplate();
$tpl->set_filenames(array('show' => './tpl/sqlbrowser/sql_record_update_inputmask.tpl'));
$target = $mode == "searchedit" ? '?mode=searchedit' : '?mode=update';
// jump back to search hit list after saving
$fields = getExtendedFieldInfo($db, $tablename);
$sqledit = "SELECT * FROM `{$tablename}` WHERE " . $recordkey;
$res = MSD_query($sqledit);
$record = mysqli_fetch_array($res, MYSQLI_ASSOC);
// get the record
$num = sizeof($record);
// get the nr of fields of the record
// iterate fields
$x = 0;
$fieldnames = '';
foreach ($record as $field => $fieldvalue) {
    $fieldnames .= $field . '|';
    $tpl->assign_block_vars('ROW', array('CLASS' => $x % 2 ? 1 : 2, 'FIELD_NAME' => $field, 'FIELD_VALUE' => my_quotes($fieldvalue), 'FIELD_ID' => correct_post_index($field)));
    if ('YES' == $fields[$field]['null']) {
        //field is nullable - precheck checkbox if value is null
        $tpl->assign_block_vars('ROW.IS_NULLABLE', array('NULL_CHECKED' => is_null($fieldvalue) ? ' checked="checked"' : ''));
    }
    $type = strtoupper($fields[$field]['type']);
    if (in_array($type, array('BLOB', 'TEXT'))) {
        $tpl->assign_block_vars('ROW.IS_TEXTAREA', array());
    } else {
        $tpl->assign_block_vars('ROW.IS_TEXTINPUT', array());
    }
    $x++;
}
$tpl->assign_vars(array('HIDDEN_FIELDS' => FormHiddenParams(), 'FIELDNAMES' => substr($fieldnames, 0, strlen($fieldnames) - 1), 'SQL_STATEMENT' => my_quotes($sql['sql_statement']), 'RECORDKEY' => my_quotes($recordkey), 'TARGET' => $target));
$tpl->pparse('show');
示例#19
0
if (isset($_GET['dbid'])) {
    $disabled_keys_found = false;
    // Output list of tables of the selected database
    $tpl = new MSDTemplate();
    $tpl->set_filenames(array('show' => 'tpl/home/databases_list_tables.tpl'));
    $dbid = $_GET['dbid'];
    $numrows = 0;
    $res = @mysqli_query($GLOBALS["___mysqli_ston"], "SHOW TABLE STATUS FROM `" . $databases['Name'][$dbid] . "`");
    (bool) mysqli_query($GLOBALS["___mysqli_ston"], "USE " . $databases['Name'][$dbid]);
    if ($res) {
        $numrows = mysqli_num_rows($res);
    }
    $tpl->assign_vars(array('DB_NAME' => $databases['Name'][$dbid], 'DB_NAME_URLENCODED' => urlencode($databases['Name'][$dbid]), 'DB_ID' => $dbid, 'TABLE_COUNT' => $numrows, 'ICONPATH' => $config['files']['iconpath']));
    $numrows = intval($numrows);
    if ($numrows > 1) {
        $tpl->assign_block_vars('MORE_TABLES', array());
    } elseif ($numrows == 1) {
        $tpl->assign_block_vars('1_TABLE', array());
    } elseif ($numrows == 0) {
        $tpl->assign_block_vars('NO_TABLE', array());
    }
    if ($numrows > 0) {
        $last_update = "2000-01-01 00:00:00";
        $sum_records = $sum_data_length = '';
        for ($i = 0; $i < $numrows; $i++) {
            $row = mysqli_fetch_array($res, MYSQLI_ASSOC);
            // Get nr of records -> need to do it this way because of incorrect returns when using InnoDBs
            $sql_2 = "SELECT count(*) as `count_records` FROM `" . $databases['Name'][$dbid] . "`.`" . $row['Name'] . "`";
            $res2 = @mysqli_query($GLOBALS["___mysqli_ston"], $sql_2);
            if ($res2 === false) {
                $row['Rows'] = 0;
// we need to save this before the Ajax-Requests starts, so we are doing it here
// although it is done in dump.php
$_SESSION['dump'] = $dump;
// checks after first dump-prepare if we need to head over to table selection
// or if we can start the backup process
if (!isset($_POST['tableselect'])) {
    // nothing to select - start dump action
    $action = 'do_dump';
} else {
    // yes, we need to show the table-selection, but first save commetn and
    // encoding that was set before
    $tplDumpSelectTables = new MSDTemplate();
    $tplDumpSelectTables->set_filenames(array('tplDumpSelectTables' => 'tpl/dump/selectTables.tpl'));
    $dbo->selectDb($dump['db_actual']);
    $tables = $dbo->getTableStatus();
    $i = 0;
    foreach ($tables as $tableName => $row) {
        $klasse = $i % 2 ? 1 : '';
        $tableSize = byteOutput($row['Data_length'] + $row['Index_length']);
        $tableType = $row['Engine'];
        $nrOfRecords = String::formatNumber($row['Rows']);
        if (substr($row['Comment'], 0, 4) == 'VIEW' && $row['Engine'] == '') {
            $tableType = 'View';
            $tableSize = '-';
            $nrOfRecords = '-';
        }
        $tplDumpSelectTables->assign_block_vars('ROW', array('CLASS' => 'dbrow' . $klasse, 'ID' => $i, 'NR' => $i + 1, 'TABLENAME' => $tableName, 'TABLETYPE' => $tableType, 'RECORDS' => $nrOfRecords, 'SIZE' => $tableSize, 'LAST_UPDATE' => $row['Update_time']));
        $i++;
    }
    $tplDumpSelectTables->assign_vars(array('PAGETITLE' => $lang['L_TABLESELECTION'], 'SESSION_ID' => session_id(), 'DATABASE' => $config['db_actual'], 'ICON_OK' => $icon['ok'], 'ICON_DELETE' => $icon['delete'], 'ICON_DB' => $icon['db'], 'L_NO_MSD_BACKUP' => $lang['L_NOT_SUPPORTED']));
}
示例#21
0
/**
 * This file is part of MySQLDumper released under the GNU/GPL 2 license
 * http://www.mysqldumper.net
 *
 * @package         MySQLDumper
 * @version         SVN: $rev: 1207 $
 * @author          $Author$
 * @lastmodified    $Date$
 */
if (!defined('MSD_VERSION')) {
    die('No direct access.');
}
// special div selected? DIV with this id will be shown e.g after pressing
// the save button
$sel = isset($_POST['sel']) ? $_POST['sel'] : 'db';
if (isset($_GET['sel'])) {
    $sel = $_GET['sel'];
}
$tplConfigurationFooter = new MSDTemplate();
$tplConfigurationFooter->set_filenames(array('tplConfigurationFooter' => 'tpl/configuration/footer.tpl'));
$tplConfigurationFooter->assign_vars(array('SELECTED_DIV' => $sel, 'NOTIFICATION_POSITION' => $config['notification_position']));
//output notification message if we have one
if ($msg > '') {
    $tplConfigurationFooter->assign_block_vars('MESSAGE', array('TEXT' => Html::getJsQuote($msg, true)));
}
// if something went wrong with the change of a user or no database was found
// -> blend in connection params and let the user correct it
if (isset($blendInConnectionParams) && $blendInConnectionParams || count($databases) == 0) {
    $tplConfigurationFooter->assign_block_vars('SWITCH_TO_CONNECTION_PARAMETER', array());
}
    }
}
//list databases
$tplSqlbrowserDbListDatabases = new MSDTemplate();
$tplSqlbrowserDbListDatabases->set_filenames(array('tplSqlbrowserDbListDatabases' => 'tpl/sqlbrowser/db/list_databases.tpl'));
$tplSqlbrowserDbListDatabases->assign_vars(array('ICON_DB' => $icon['db'], 'ICON_VIEW' => $icon['view'], 'ICON_EDIT' => $icon['edit'], 'ICON_DELETE' => $icon['delete'], 'ICON_PLUS' => $icon['plus'], 'ICON_MINUS' => $icon['minus'], 'ICON_TRUNCATE' => $icon['truncate'], 'CONFIRM_TRUNCATE_DATABASES' => Html::getJsQuote($lang['L_CONFIRM_TRUNCATE_DATABASES'], true), 'CONFIRM_DROP_DATABASES' => Html::getJsQuote($lang['L_CONFIRM_DROP_DATABASES'], true)));
$i = 0;
foreach ($databases as $dbName => $val) {
    $rowclass = $i % 2 ? 'dbrow' : 'dbrow1';
    if ($dbName == $config['db_actual']) {
        $rowclass = "dbrowsel";
    }
    //does the database exist?
    if (!$dbo->selectDb($dbName, true)) {
        // no -> show message "doesn't exist"
        $tplSqlbrowserDbListDatabases->assign_block_vars('DB_NOT_FOUND', array('ROWCLASS' => $rowclass, 'NR' => $i + 1, 'DB_NAME' => $dbName, 'DB_ID' => $i));
        // if this happens the list is not accurate
        // -> reload db-list to remove deleted dbs
        setDefaultConfig();
    } else {
        // yes, db exists -> show nr of tables
        $tables = $dbo->getTableStatus();
        $numTables = (int) sizeof($tables);
        $tplSqlbrowserDbListDatabases->assign_block_vars('ROW', array('ROWCLASS' => $rowclass, 'NR' => $i + 1, 'DB_NAME' => $dbName, 'DATABASE_NAME_URLENCODED' => base64_encode($dbName), 'DB_ID' => base64_encode($dbName), 'TABLE_COUNT' => $numTables, 'CONFIRM_DELETE' => Html::getJsQuote(sprintf($lang['L_ASKDBDELETE'], $dbName)), 'CONFIRM_TRUNCATE' => Html::getJsQuote(sprintf($lang['L_ASKDBEMPTY'], $dbName))));
        if ($numTables == 1) {
            $tplSqlbrowserDbListDatabases->assign_block_vars('ROW.TABLE', array());
        } else {
            $tplSqlbrowserDbListDatabases->assign_block_vars('ROW.TABLES', array());
        }
    }
    $i++;
    $_SESSION['restore'] = $restore;
    $logMsg = sprintf($lang['L_START_RESTORE_DB_FILE'], $config['db_actual'], $restore['filename']);
    $log->write(Log::PHP, $logMsg);
} else {
    $config = $_SESSION['config'];
    $databases = $_SESSION['databases'];
    $restore = $_SESSION['restore'];
}
// tables to create
$tablesDone = 0;
if ($restore['table_ready'] > 0) {
    $tablesDone = $restore['table_ready'];
}
if ($restore['tables_total'] > 0) {
    $tablesToDo = $restore['tables_total'];
} else {
    $tablesToDo = $lang['L_UNKNOWN'];
}
if ($restore['tables_total'] > 0) {
    $tablesToCreate = sprintf($lang['L_RESTORE_TABLES_COMPLETED'], $tablesDone, $tablesToDo);
} else {
    $tablesToCreate = sprintf($lang['L_RESTORE_TABLES_COMPLETED0'], $tablesDone);
}
$tplRestore = new MSDTemplate();
$tplRestore->set_filenames(array('tplRestore' => 'tpl/restore/restore.tpl'));
$restoringDb = sprintf($lang['L_RESTORE_DB'], $config['db_actual'], $config['dbhost']);
$tplRestore->assign_vars(array('SESSION_ID' => session_id(), 'ICONPATH' => $config['files']['iconpath'], 'ICON_PLUS' => $icon['plus'], 'DB_ON_SERVER' => $restoringDb, 'FILENAME' => $restore['filename'], 'CHARSET' => $restore['dump_encoding'], 'TABLES_TO_CREATE' => $tablesToCreate, 'NOTIFICATION_POSITION' => $config['notification_position']));
if ($restore['part'] > 0) {
    $tplRestore->assign_block_vars('MULTIPART', array('PART' => $restore['part']));
}
$_SESSION['restore'] = $restore;
}
// remove table selection from previous runs
if (isset($dump['sel_tbl'])) {
    unset($dump['sel_tbl']);
}
if (isset($_SESSION['dump']['sel_tbl'])) {
    unset($_SESSION['dump']['sel_tbl']);
}
//if we are not in mode expert -> reset hidden settings to safe defaults
if ($config['msd_mode'] == 0) {
    $config['replace_command'] = 0;
}
$tplDumpPrepare = new MSDTemplate();
$tplDumpPrepare->set_filenames(array('tplDumpPrepare' => 'tpl/dump/dump_prepare.tpl'));
if ($config['msd_mode'] > 0) {
    $tplDumpPrepare->assign_block_vars('MODE_EXPERT', array());
}
// set charset-selectbox to standard-encoding of MySQL-Server as initial value
$dump['sel_dump_encoding'] = 'utf8';
$dump['dump_encoding'] = 'utf8';
$charsets = $dbo->getCharsets();
foreach ($charsets as $name => $val) {
    $charsetsDescription[$name] = $name . ' - ' . $val['Description'];
}
// tables will be selected on next page, but we need a dummy val
// for prepareDumpProcess()
$dump['selected_tables'] = false;
$dbsToBackup = array();
// look up which databases need to be dumped
prepareDumpProcess();
$dbs = array_keys($dump['databases']);
示例#25
0
<?php

if (!defined('MSD_VERSION')) {
    die('No direct access.');
}
//Start SQL-Box
$tpl = new MSDTemplate();
$tpl->set_filenames(array('show' => $config['paths']['root'] . './tpl/sqlbrowser/sqlbox.tpl'));
if (isset($_GET['readfile']) && $_GET['readfile'] == 1) {
    $tpl->assign_block_vars('SQLUPLOAD', array('POSTTARGET' => $params, 'LANG_OPENSQLFILE' => $lang['L_SQL_OPENFILE'], 'LANG_OPENSQLFILE_BUTTON' => $lang['L_SQL_OPENFILE_BUTTON'], 'LANG_SQL_MAXSIZE' => $lang['L_MAX_UPLOAD_SIZE'], 'MAX_FILESIZE' => $config['upload_max_filesize']));
}
if (isset($_POST['submit_openfile'])) {
    //open file
    if (!isset($_FILES['upfile']['name']) || empty($_FILES['upfile']['name'])) {
        $aus .= '<span class="error">' . $lang['L_FM_UPLOADFILEREQUEST'] . '</span>';
    } else {
        $fn = $_FILES['upfile']['tmp_name'];
        if (strtolower(substr($_FILES['upfile']['name'], -3)) == ".gz") {
            $read__user_sqlfile = gzfile($fn);
        } else {
            $read__user_sqlfile = file($fn);
        }
        $aus .= '<span>geladenes File: <strong>' . $_FILES['upfile']['name'] . '</strong>&nbsp;&nbsp;&nbsp;' . byte_output(filesize($_FILES['upfile']['tmp_name'])) . '</span>';
        $sql_loaded = implode("", $read__user_sqlfile);
    }
}
// Sind SQL-Befehle in der SQLLib vorhanden?
$sqlcombo = SQL_ComboBox();
if ($sqlcombo > '') {
    $tpl->assign_block_vars('SQLCOMBO', array('SQL_COMBOBOX' => $sqlcombo));
}
示例#26
0
        $Sum_Files++;
        $Sum_Size += filesize($config['paths']['backup'] . $filename);
        $ft = filectime($config['paths']['backup'] . $filename);
        if (!isset($Last_BU[2]) || isset($Last_BU[2]) && $ft > $Last_BU[2]) {
            $Last_BU[0] = $filename;
            $Last_BU[1] = date("d.m.Y H:i", $ft);
            $Last_BU[2] = $ft;
        }
    }
}
$directory_warnings = DirectoryWarnings();
$tpl = new MSDTemplate();
$tpl->set_filenames(array('show' => 'tpl/home/home.tpl'));
$tpl->assign_vars(array('THEME' => $config['theme'], 'MSD_VERSION' => MSD_VERSION, 'OS' => MSD_OS, 'OS_EXT' => MSD_OS_EXT, 'MYSQL_VERSION' => MSD_MYSQL_VERSION, 'PHP_VERSION' => PHP_VERSION, 'MEMORY' => byte_output($config['php_ram'] * 1024 * 1024), 'MAX_EXECUTION_TIME' => $config['max_execution_time'], 'PHP_EXTENSIONS' => $config['phpextensions'], 'SERVER_NAME' => $_SERVER['SERVER_NAME'], 'MSD_PATH' => $config['paths']['root'], 'DB' => $databases['db_actual'], 'NR_OF_BACKUP_FILES' => $Sum_Files, 'SIZE_BACKUPS' => byte_output($Sum_Size), 'FREE_DISKSPACE' => MD_FreeDiskSpace()));
if ($directory_warnings > '') {
    $tpl->assign_block_vars('DIRECTORY_WARNINGS', array('MSG' => $directory_warnings));
}
if ($config['disabled'] > '') {
    $tpl->assign_block_vars('DISABLED_FUNCTIONS', array('PHP_DISABLED_FUNCTIONS' => str_replace(',', ', ', $config['disabled'])));
}
// Zlib is buggy from version 4.3.0 upto 4.3.2, so lets check for these versions
if (version_compare(PHP_VERSION, '4.3.0', '>=') && version_compare(PHP_VERSION, '4.3.2', '<=')) {
    $tpl->assign_block_vars('ZLIBBUG', array());
}
if (!extension_loaded('ftp')) {
    $tpl->assign_block_vars('NO_FTP', array());
}
if (!$config['zlib']) {
    $tpl->assign_block_vars('NO_ZLIB', array());
}
if ($is_htaccess) {
示例#27
0
    $status[$row['Variable_name']] = $row['Value'];
}
$filter = getPrefixArray($status);
// values that will be formatted as times
$timeValues = array('Uptime', 'Uptime_since_flush_status');
$tplSqlbrowserGeneralStatus = new MSDTemplate();
$tplSqlbrowserGeneralStatus->set_filenames(array('tplSqlbrowserGeneralStatus' => 'tpl/sqlbrowser/general/status.tpl'));
if ($selectedFilter != '-1') {
    $query = 'SHOW GLOBAL STATUS LIKE \'' . $selectedFilter . '_%\'';
    $res = $dbo->query($query, MsdDbFactory::ARRAY_ASSOC);
}
if (@sizeof($res) == 0) {
    $tpl->assign_block_vars('NO_STATUS', array());
} else {
    if (count($filter) > 0) {
        $tplSqlbrowserGeneralStatus->assign_block_vars('FILTER', array('SEL_FILTER' => Html::getOptionlist($filter, $selectedFilter)));
    }
    $i = 0;
    foreach ($status as $key => $val) {
        if ($selectedFilter != '-1' && substr($key, 0, strlen($selectedFilter)) != $selectedFilter) {
            continue;
        }
        if (in_array($key, $timeValues)) {
            $val = getTimeFormat($val);
        } else {
            $val = String::formatNumber($val);
        }
        $tplSqlbrowserGeneralStatus->assign_block_vars('ROW', array('ROWCLASS' => $i % 2 ? 'dbrow' : 'dbrow1', 'NR' => $i + 1, 'VAR_NAME' => $key, 'VAR_VALUE' => $val));
        $i++;
    }
}
示例#28
0
文件: menu.php 项目: thaian2009/php
			{
				var selected_div=parent.MySQL_Dumper_content.document.getElementById("sel").value;
			}
			else selected_div=\'\';
			parent.MySQL_Dumper_content.location.href=\'config_overview.php?config=' . urlencode($new_config) . '&sel=\'+selected_div</script>';
        }
        if (isset($_GET['config'])) {
            $config_refresh = '';
        }
        //Neu-Aufruf bei Uebergabe aus Content-Bereich verhindern
    }
}
echo MSDHeader(1);
echo headline('', 0);
if ($config_refresh > '') {
    $tpl->assign_block_vars('CONFIG_REFRESH_TRUE', array());
    $tpl->assign_var('CONFIG_REFRESH', $config_refresh);
}
// changed language
if ($config['language'] != $lang_old) {
    $tpl->assign_block_vars('CHANGED_LANGUAGE', array());
}
if (isset($_GET['action'])) {
    if ($_GET['action'] == 'dbrefresh') {
        // remember the name of the selected database
        $old_dbname = isset($databases['Name'][$databases['db_selected_index']]) ? $databases['Name'][$databases['db_selected_index']] : '';
        SetDefault();
        // select old database if it still is there
        SelectDB($old_dbname);
        $tpl->assign_block_vars('DB_REFRESH', array());
    }
$tplSqlbrowserTableEditTable->assign_vars(array('DB' => $db, 'TABLE' => $tablename));
$sumSize = 0;
$i = 0;
foreach ($tableInfos as $key => $tableInfo) {
    if ($key != 'primary_keys') {
        $type = $tableInfo['Type'];
        $typeTemp = array();
        // ENUM-/SET-Handling
        if (strpos($type, 'enum') !== false || strpos($type, 'set') !== false) {
            $toBeReplaced = array('set(', 'enum(', ')', '\'');
            $typeTemp = str_replace($toBeReplaced, '', $type);
            $typeTemp = explode(',', $typeTemp);
            sort($typeTemp);
            if (strpos($type, 'enum') !== false) {
                $type = 'enum';
            } else {
                $type = 'set';
            }
        }
        $tplSqlbrowserTableEditTable->assign_block_vars('ROW', array('ROWCLASS' => $i % 2 ? 'dbrow' : 'dbrow1', 'NR' => $i + 1, 'NAME' => $tableInfo['Field'], 'TYPE' => $type, 'NULL' => $tableInfo['Null'] == 'NO' ? $lang['L_NO'] : $lang['L_YES'], 'KEY' => $tableInfo['Key'], 'DEFAULT' => $tableInfo['Default'], 'EXTRA' => $tableInfo['Extra'], 'SORTIERUNG' => $tableInfo['Collation']));
        if (count($typeTemp) > 0) {
            $tplSqlbrowserTableEditTable->assign_block_vars('ROW.ENUM_SET', array('SIZE' => count($typeTemp) < 5 ? count($typeTemp) : 5, 'ICON_BROWSE' => $icon['browse'], 'NR' => $i));
            foreach ($typeTemp as $val) {
                $tplSqlbrowserTableEditTable->assign_block_vars('ROW.ENUM_SET.ENUM_SET_ELEMENT', array('ELEMENT' => $val));
            }
        }
        $i++;
    }
}
// Output list of tables of the selected database
$tplSqlbrowserTableEditTable->assign_vars(array('DB_NAME_URLENCODED' => base64_encode($db), 'TABLE_NAME_URLENCODED' => base64_encode($tablename), 'ICON_VIEW' => $icon['view'], 'ICON_EDIT' => $icon['edit'], 'ICON_OK' => $icon['ok'], 'ICON_NOT_OK' => $icon['not_ok'], 'ICON_DELETE' => $icon['delete'], 'ICON_UP' => $icon['arrow_up'], 'ICON_DOWN' => $icon['arrow_down'], 'ICON_PLUS' => $icon['plus'], 'ICON_MINUS' => $icon['minus'], 'ICON_CANCEL' => $icon['cancel'], 'DB' => $db, 'DB_ENCODED' => base64_encode($db), 'TABLE_ENCODED' => base64_encode($tablename), 'ICONPATH' => $config['files']['iconpath']));
 * http://www.mysqldumper.net
 *
 * @package         MySQLDumper
 * @version         SVN: $rev: 1207 $
 * @author          $Author$
 * @lastmodified    $Date$
 */
if (!defined('MSD_VERSION')) {
    die('No direct access.');
}
$fileName = isset($_GET['filename']) ? urldecode($_GET['filename']) : '';
if (isset($_POST['file'][0])) {
    $fileName = $_POST['file'][0];
}
$tplRestoreSelectTables = new MSDTemplate();
$tplRestoreSelectTables->set_filenames(array('tplRestoreSelectTables' => 'tpl/restore/selectTables.tpl'));
//Get Header-Infos from file
$sline = readStatusline($fileName);
if ($sline['records'] == -1) {
    // not a backup of MySQLDumper
    $tplRestoreSelectTables->assign_block_vars('NO_MSD_BACKUP', array());
} else {
    // Get Tableinfo from file header
    $tabledata = getTableHeaderInfoFromBackup($fileName);
    for ($i = 0; $i < sizeof($tabledata); $i++) {
        $klasse = $i % 2 ? 1 : '';
        $tplRestoreSelectTables->assign_block_vars('ROW', array('CLASS' => 'dbrow' . $klasse, 'ID' => $i, 'NR' => $i + 1, 'TABLENAME' => $tabledata[$i]['name'], 'RECORDS' => String::formatNumber($tabledata[$i]['records']), 'SIZE' => byteOutput($tabledata[$i]['size']), 'LAST_UPDATE' => $tabledata[$i]['update'], 'TABLETYPE' => $tabledata[$i]['engine']));
    }
}
$confirmRestore = $lang['L_FM_ALERTRESTORE1'] . ' `' . $config['db_actual'] . '`  ' . $lang['L_FM_ALERTRESTORE2'] . ' ' . $fileName . ' ' . $lang['L_FM_ALERTRESTORE3'];
$tplRestoreSelectTables->assign_vars(array('PAGETITLE' => $lang['L_RESTORE'] . ' - ' . $lang['L_TABLESELECTION'], 'DATABASE' => $config['db_actual'], 'FILENAME' => $fileName, 'ICON_OK' => $icon['ok'], 'ICON_DELETE' => $icon['delete'], 'ICON_RESTORE' => $icon['restore'], 'L_NO_MSD_BACKUP' => $lang['L_NOT_SUPPORTED'], 'CONFIRM_RESTORE' => $confirmRestore));