Файл: installer/index.php
Строк: 191
<?
function split_sql($sql) {
$sql = trim($sql);
$sql = preg_replace("|n#[^n]*n|", "n", $sql);
$buffer = array();
$ret = array();
$in_string = false;
for ($i = 0; $i < strlen($sql) - 1; $i++) {
if ($sql[$i] == ";" && !$in_string) {
$ret[] = substr($sql, 0, $i);
$sql = substr($sql, $i + 1);
$i = 0;
}
if ($in_string && ($sql[$i] == $in_string) && $buffer[1] != "\") {
$in_string = false;
}elseif (!$in_string && ($sql[$i] == '"' || $sql[$i] == "'") && (!isset ($buffer[0]) || $buffer[0] != "\")) {
$in_string = $sql[$i];
}
if (isset ($buffer[1])) {
$buffer[0] = $buffer[1];
}
$buffer[1] = $sql[$i];
}
if (!empty ($sql)) {
$ret[] = $sql;
}
return ($ret);
}
$inc['version'] = 'v0.3';
$inc['title'] = 'Установка 2mas engine';
echo '<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml"><head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<link rel="stylesheet" type="text/css" href="/installer/style.css"/>
<link rel="shortcut icon" href="/installer/favicon.png" type="image/x-icon"/>
<title>'.$inc['title'].' '.$inc['version'].'</title></head><body>';
echo '<div class="top">';
echo ''.$inc['title'].' '.$inc['version'].'';
echo '</div>';
echo '<div class="main">';
if (file_exists('../apahe/bd.php')){
if ($_GET['unlink']==ok){
unlink('../apahe/bd.php');
if (isset($_POST['unlinks'])){
echo '<div class="addod">Файл удален успешно, теперь обнови страницу.</div>';
echo '<form method="post" action="index.php">';
echo '<input type="submit" name="okks" title="Обновить" value="Обновить"/>';
echo '</form></div>';
}else{
echo '<div class="error">Еще раз попробуещь похакерить я выключу твой комп.</div>';
}
}else{
echo '<div class="error">Для продолжения установки необходимо удалить файл <name>/apahe/bd.php</name></div>';
echo '<form method="post" action="?unlink=ok">';
echo '<input type="submit" name="unlinks" title="Удалить файл кофигурации" value="Удалить файл кофигурации"/>';
echo '</form></div>';
}
echo '<div class="top">';
echo '<a href="http://2mas.ru/" title="Бесплатный wap движок">© 2mas.ru</a>';
echo '</div>';
exit;
}
switch ($_GET['selest']){
default:
if (isset($_POST['okks'])){
echo '<div class="main-text">';
echo 'Вас приветствует авто-установщик движка <name>2mas engine</name>';
echo '</div>';
echo '<div class="main-href">';
echo 'Движок бесплатен, и в связи с этим будте любезны скажите ниже перечисленным лицам спасибо!</br>';
echo '</div>';
echo '<div class="main-href">';
echo 'Версия движка: <name>'.$inc['version'].'</name></br>';
echo '</div>';
echo '<div class="main-href">';
echo 'Автор: <name>Gooden</name></br>';
echo '</div>';
echo '<div class="main-href">';
echo 'Помощники: <name>отсутствуют</name></br>';
echo '</div>';
echo '<div class="main-href">';
echo '<form method="post" action="?selest=chmod">';
echo '<input type="submit" name="chmod-ok" title="Начать установку" value="Начать установку"/>';
echo '</form></div>';
}else{
echo '<div class="main-text">';
echo 'Система определила вас как робота, нажмите кнопку если ты не робот.';
echo '</div>';
echo '<div class="main-href">';
echo '<form method="post" action="index.php">';
echo '<input type="submit" name="okks" title="Я не робот" value="Я не робот"/>';
echo '</form></div>';
}
break;
case 'chmod':
if (isset($_POST['chmod-ok'])){
if (!is_writable('../installer/')){
echo '<div class="error">Установите chmod 777 на папку <name>/installer/</name>.</div>';
$chmod = 1;
}
if (!is_writable('../apahe/')){
echo '<div class="error">Установите chmod 777 на папку <name>/apahe/</name>.</div>';
$chmod = 1;
}
if (!is_writable('../apahe/fnc/')){
echo '<div class="error">Установите chmod 777 на папку <name>/apahe/fnc/</name>.</div>';
$chmod = 1;
}
if (!is_writable('../sheet/smiles/')){
echo '<div class="error">Установите chmod 777 на папку <name>/sheet/smiles/</name>.</div>';
$chmod = 1;
}
if (!is_writable('../forum/file/')){
echo '<div class="error">Установите chmod 777 на папку <name>/forum/file/</name>.</div>';
$chmod = 1;
}
if (!is_writable('../obmen/dir/')){
echo '<div class="error">Установите chmod 777 на папку <name>/obmen/dir/</name>.</div>';
$chmod = 1;
}
if (!is_writable('../sheet/')){
echo '<div class="error">Установите chmod 777 на папку <name>/sheet/</name>.</div>';
$chmod = 1;
}
if (!is_writable('../sheet/style/')){
echo '<div class="error">Установите chmod 777 на папку <name>/sheet/style/</name>.</div>';
$chmod = 1;
}
if (isset($chmod)){
echo '<div class="error">Продолжение установки невозможно.</div>';
}else{
echo '<div class="addod">Сhmod на файлах и папках установлен правильно.</div>';
echo '<div class="main-href"><form method="post" action="?selest=bd-connect">';
echo 'Сервер MySQL:</br>';
echo '<input type="text" name="host" value="localhost"/></br>';
echo 'Имя базы:</br>';
echo '<input type="text" name="name"/></br>';
echo 'Имя пользователя:</br>';
echo '<input type="text" name="user"/></br>';
echo 'Пароль:</br>';
echo '<input type="text" name="pass"/></br>';
echo '<input type="submit" name="install-ok" title="Установить" value="Установить"/>';
echo '</form></div>';
}
}
break;
case 'bd-connect':
if (isset($_POST['install-ok'])){
$host = $_POST['host'];
$name = $_POST['name'];
$user = $_POST['user'];
$pass = $_POST['pass'];
if (empty($host)) $err .= 'Не введён сервер mysql.</br>';
if (empty($name)) $err .= 'Не введёно имя базы.</br>';
if (empty($user)) $err .= 'Не введёно пользователя.</br>';
if (empty($pass)) $err .= 'Не введён пароль.</br>';
if (!isset($err)){
$connect = @mysql_connect($host, $user, $pass);
$connect2 = @mysql_select_db($name, $connect);
if ($connect == TRUE and $connect2 == TRUE){
mysql_query('SET NAMES `utf8`', $connect);
$query = file_get_contents('sql.sql');
$pieces = split_sql($query);
for ($i = 0; $i < count($pieces); $i++) {
$pieces[$i] = trim($pieces[$i]);
if (!empty ($pieces[$i]) && $pieces[$i] != "#") {
mysql_query($pieces[$i]);
}
}
set_time_limit(0);
$limit=1;
for ($i = 1; $i <= $limit; $i++){
$fp = fopen ('../apahe/bd.php', 'w');
fclose($fp);
}
$bdf = "<?
define ('myhost', $host);
define ('myuser', $user);
define ('mypass', $pass);
define ('mybase', $name);
?>";
file_put_contents('../apahe/bd.php', $bdf);
chmod('../apahe/bd.php', 0664);
echo '<div class="addod">Поздравляем вы установили <name>2mas engine '.$inc['version'].'</name>, не забудьте удалить папку <name>/installer/</name>.</div>';
echo '<div class="main-href">';
echo 'После перехода зарегистрируйся. Первый зарегистрировавшийся получает должность <name>создателя</name>.</br>';
echo '</div>';
echo '<a class="main-href" href="/create.dll" title="Перейти на сайт">Перейти на сайт</a>';
}else{
echo '<div class="error">Не возможно поключиться к mysql, видимо вы ощиблись при вводе данных.</div>';
echo '<div class="main-href"><form method="post" action="?selest=chmod">';
echo '<input type="submit" name="chmod-ok" title="Пробовать ещё" value="Пробовать ещё"/>';
echo '</form></div>';
}
}else{
echo '<div class="error">'.$err.'</div>';
echo '<div class="main-href"><form method="post" action="?selest=chmod">';
echo '<input type="submit" name="chmod-ok" title="Пробовать ещё" value="Пробовать ещё"/>';
echo '</form></div>';
}
}
break;
}
echo '</div>';
echo '<div class="top">';
echo '<a href="http://2mas.ru/" title="Бесплатный wap движок">© 2mas.ru</a>';
echo '</div>';
?>