View file install/index.php

File size: 7.01Kb
<?php
ob_start();
include('../system/include/head.inc');//Выводим функции
switch($_GET['page'])
{
default:
                 $str="Вас приветствует мастер установки.";
                $str.="<br/>";
                $str.="<input type='button' value='Далее' onclick=\"window.location='?page=3'\">";
                echo $str;
            break;




             case "3":
                $str.="Конфигурации<br />";

            echo $str;
            echo'<form method="post" action="?page=4">';

            echo "Хост:<br/>";
            echo "<input name=\"host\" value='localhost' maxlength=\"20\" title=\"host\" emptyok=\"true\"/><br/>";
            
            echo "Логин:<br/>";
            echo "<input name=\"user\" value='root' maxlength=\"20\" title=\"host\" emptyok=\"true\"/><br/>";
            echo "Пароль:<br/>";
            echo "<input name=\"password\" value='password' maxlength=\"20\" title=\"host\" emptyok=\"true\"/><br/>";
            echo "База:<br/>";
            echo "<input name=\"database\" value='db' maxlength=\"20\" title=\"host\" emptyok=\"true\"/><br/>";
            
            echo '<input class="button" type="submit" value="Далее"/>';
            break;



             case "4":
             if(empty($_POST['user']))
                {
                    echo 'Вы не указани логин базы';
                    include('../system/include/end.inc');//Выводим функции
                    exit;
                }
                if(empty($_POST['host']))
                {
                    echo 'Вы не указани хост базы';
                    include('../system/include/end.inc');//Выводим функции
                    exit;
                }
                if(empty($_POST['password']))
                {
                    echo 'Вы не указани пароль базы';
                    include('../system/include/end.inc');//Выводим функции
                    exit;
                }
                if(empty($_POST['database']))
                {
                    echo 'Вы не указани базу';
                    include('../system/include/end.inc');//Выводим функции
                    exit;
                }
                echo"Создаем файлы<br/>";
                
echo 'Файл settings.inc';
$fp = fopen ("../system/include/settings.inc","w");  //Желательно не менять , но если заменили то ниже там где заполнение бд укажите путь к конфигу

flock($f,LOCK_EX); 

fputs($fp,"<?php\n\r"); 
fputs($fp, 'session_start();'."\n\r");
fputs($fp,'$host  =  '."'".$_POST['host']."';\n\r");
fputs($fp,'$user  =  '."'".$_POST['user']."';\n\r");
fputs($fp,'$pass  =  '."'".$_POST['password']."';\n\r");
fputs($fp,'$table =  '." '".$_POST['database']."' ;\n\r");

fputs($fp, '$connect = @ mysql_pconnect($host, $user, $pass) or die("Нет подключения к серверу MySql...");'."\n\r");

fputs($fp, '@ mysql_select_db($table) or die("Нет подключения к серверу MySql...");'."\n\r");

fputs($fp, '@ mysql_query("SET NAMES \'utf8\'", $connect);'."\n\r");

fputs($fp, '$login = $_SESSION[\'log\'];'."\n\r");

fputs($fp, '$text = mysql_query("SELECT * FROM `users` WHERE `usr` = \'$login\'");'."\n\r");

fputs($fp, '$udata = mysql_fetch_array($text);'."\n\r");

fputs($fp, '$nick = $_SESSION[\'char\'];'."\n\r");

fputs($fp, '$req = mysql_query("SELECT * FROM `chars` WHERE `nick` = \'$nick\'");'."\n\r");

fputs($fp, '$udata2 = mysql_fetch_array($req);'."\n\r");

fputs($fp, '$sql = "DELETE FROM online WHERE date<".(time()-5*60);'."\n\r");
fputs($fp, 'mysql_query($sql);'."\n\r");
fputs($fp, '$res = mysql_query("SELECT id FROM online WHERE usr=\'".$udata2["nick"]."\'");'."\n\r");
fputs($fp, 'if(mysql_num_rows($res)==0 AND $udata2[\'nick\'] != \'\'){'."\n\r");

fputs($fp, 'mysql_query("INSERT INTO `online` SET `usr` = \'".$udata2["nick"]."\', `date` = \'".time()."\'");'."\n\r");

fputs($fp, '}'."\n\r");

fputs($fp, 'list($total_online) = mysql_fetch_row(mysql_query("SELECT count(id) FROM online"));'."\n\r");

           
fputs($fp,"?>\n\r"); 
flock($f,LOCK_UN);      
fclose($fp);
echo '<font color=green> создан</font><BR>';
                
                $str.="<br/><input type='button' value='Далее' onclick=\"window.location='?page=5'\">";
            echo $str;
            break;


             case "5":
                echo "Установка базы<br />";
require '../system/include/settings.inc'; // путь к файлу конфигураций 
$fname = "../install/damp/db.sql";  // адрес к дампу
mysql_connect("$host, $user, $pass"); 
mysql_select_db("$table"); 
if (!file_exists($fname)) die ("Установка базы не возможна! Файл $fname не существует!"); 

$fp = fopen ($fname, "r");  
$buffer = fread($fp, filesize($fname));  
fclose ($fp);  
  
$prev = 0;  
  
while ($next = strpos($buffer,";",$prev+1))  
{  
$i++;  
$a = substr($buffer,$prev+1,$next-$prev);  
mysql_query($a);  
$prev = $next;  
}  
 
 
echo "Установка базы прошла успешна!<br /> Выполнено $i запросов";  

                
                $str.="<br /><input type='button' value='Далее' onclick=\"window.location='?page=6'\">";
            
            echo $str;
            
            
            break;

            case "6":
                $str="Поздравляем!<br /> Игра успешно установлена.<font color=red><br />Для правильной работы системы необходимо удалить папку 'install'<br />Категорически запрещается удалять файл 'install.lock', он отвечает за блокировку повторной установки скрипта!!!</font>";
                echo $str;
                $fp = fopen ("../install.lock","w");  //Желательно не менять , но если заменили то ниже там где заполнение бд укажите путь к конфигу
                flock($f,LOCK_EX); 
                fputs($fp, '#---Этот фаил блокирует повторную установку скрипта, категорически запрещено его удалять!!!---#'."\n\r");
                fputs($fp, 'jlGHLg7G9gOJI6ghd87IGDoiGHIHORFH3hfhf8ohPOfh8h3ifhOHof38fyh8fPF029fr02fhPFH29fh20h902hf920frty8FH8f2yhwiohOFf092hyf8HOFf8h092HF80Fh82YFh9H0HF0202ffhFH82h0fHffh20FhSOIhd03rFHf8f0FH');
                flock($f,LOCK_UN);      
                fclose($fp);
            break;


file_put_contents('install.lock',''); // создаем блокировщик 


        }


include('../system/include/end.inc');//Выводим функции
?>