Вход Регистрация
Файл: DarkAge/gm1.php
Строк: 126
<?
Error_Reporting
(E_ALL & ~E_NOTICE);
$ref=rand(100,10000000);
include_once(
"files/antixak.php");
include_once(
"files/zag.php");

$log htmlspecialchars(stripslashes($log));
$pas htmlspecialchars(stripslashes($pas));
/////////////////////////////////////////////////////
$text = @file("data/reg/$log.dat"); 
if (
$text!=""){
$udata explode(":||:",$text[0]);
$login=trim($udata[0]);
$password=trim($udata[1]);}
////////////////////////////////////////////////////////
if (md5($pas)==$password && $log==$login && $log!=="" && md5($pas)!=="") {

$u explode(".",$login);

if(
$log=="$u[0].GM"){


switch(
$go) {

default:

echo
'<a href="gm.php?log='.$log.'&amp;pas='.$pas.'&amp;go=profil">Профиль игроков</a><br />';
echo
'<a href="chat.php?log='.$log.'&amp;pas='.$pas.'">Управление чатом</a><br />';
if(
$log=="Amstor.GM"){echo'<a href="gm.php?log='.$log.'&amp;pas='.$pas.'&amp;go=backupdata">Backup-data</a><br />';
//echo'<a href="gm.php?log='.$log.'&amp;pas='.$pas.'&amp;go=backupgame">Backup-game</a><br />';
echo'<a href="gm.php?log='.$log.'&amp;pas='.$pas.'&amp;go=resbackup">Восстановить бэкап с данными</a><br />';}

break;

case 
'profil':

echo 
"Логин:<br/>";
echo 
"<input name="loginn" maxlength="10" title="nick"/><br/>";
echo 
"<anchor title="go">OK<go href="gm.php?log=$log&amp;pas=$pas&amp;go=profiledit" method="post">";
echo 
"<postfield name="logi" value="$(loginn)"/>";
echo 
"</go></anchor><br/>";

break;

case 
'profiledit':

$logi=$_POST['logi'];

$text = @file("data/reg/$logi.dat"); 
$udata explode(":||:",$text[0]);
$aden=trim($udata[8]);
$exp=trim($udata[19]);
$lvl=trim($udata[9]);
$sp=trim($udata[31]);


echo 
"&#x423;&#x440;&#x43E;&#x432;&#x435;&#x43D;&#x44C;:<br/>";
echo 
"<input name="lvl$ref" maxlength="100" value="$lvl"/><br/>";
echo 
"&#x414;&#x435;&#x43D;&#x44C;&#x433;&#x438;:<br/>";
echo 
"<input name="aden$ref" maxlength="10" value="$aden"/><br/>";
echo 
"&#x41E;&#x43F;&#x44B;&#x442;:<br/>";
echo 
"<input name="exp$ref" maxlength="10" value="$exp"/><br/>";
echo 
"SP:<br/>";
echo 
"<input name="sp$ref" maxlength="100" value="$sp"/><br/>";

echo 
"<anchor title="go">OK<go href="gm.php?log=$log&amp;pas=$pas&amp;go=profilsave" method="post">";
echo 
"<postfield name="lvl2" value="$(lvl$ref)"/>";
echo 
"<postfield name="aden2" value="$(aden$ref)"/>";
echo 
"<postfield name="exp2" value="$(exp$ref)"/>";
echo 
"<postfield name="sp2" value="$(sp$ref)"/>";
echo 
"<postfield name="login2" value="$logi"/>";
echo 
"</go></anchor><br/>";

break;

case 
'profilsave':

$login2=$_POST['login2'];

$fal = @file("data/reg/$login2.dat"); 
$uda explode(":||:",$fal[0]);

$sp2=$_POST['sp2'];
$aden2=$_POST['aden2'];
$lvl2=$_POST['lvl2'];
$uda[19]=$_POST['exp2'];

$t=$uda[0].':||:'.$uda[1].':||:'.$uda[2].':||:'.$uda[3].':||:'.$uda[4].':||:'.$uda[5].':||:'.$uda[6].':||:'.$uda[7].':||:'.$aden2.':||:'.$lvl2.':||:'.$uda[10].':||:'.$uda[11].':||:'.$uda[12].':||:'.$uda[13].':||:'.$uda[14].':||:'.$uda[15].':||:'.$uda[16].':||:'.$uda[17].':||:'.$uda[18].':||:'.$uda[19].':||:'.$uda[20].':||:'.$uda[21].':||:'.$uda[22].':||:'.$uda[23].':||:'.$uda[24].':||:'.$uda[25].':||:'.$uda[26].':||:'.$uda[27].':||:'.$uda[28].':||:'.$uda[29].':||:'.$uda[30].':||:'.$sp2.':||:'.$uda[32].':||:'.$uda[33].':||:'.$uda[34].':||:'.$uda[35].':||:'.$uda[36].':||:'.$uda[37].':||:'.$uda[38].':||:'.$uda[39].':||:'.$uda[40].':||:'.$uda[41].':||:'.$uda[42].':||:'.$uda[43].':||:'.$uda[44].':||:'.$uda[45].':||:'.$uda[46].':||:'.$uda[47].':||:'.$uda[48].':||:'.$uda[49].':||:'.$uda[50].':||:'.$uda[51].':||:'.$uda[52].':||:'.$uda[53].':||:'.$uda[54].':||:'.$uda[55].':||:'.$uda[56].':||:'.$uda[57].':||:'.$uda[58].':||:'.$uda[59].':||:'.$uda[60].':||:'.$uda[61].':||:'.$uda[62].':||:'.$uda[63].':||:'.$uda[64].':||:'.$uda[65].':||:'.$uda[66].':||:'.$uda[67].':||:'.$uda[68].':||:'.$uda[69].':||:'.$uda[70].':||:'.$uda[71].':||:'.$uda[72].':||:'.$uda[73].':||:'.$uda[74].':||:'.$uda[75].':||:'.$uda[76].':||:'.$uda[77].':||:'.$uda[78].':||:'.$uda[79].':||:'.$uda[80].':||:'.$uda[81].':||:'.$uda[82].':||:'.$uda[83].':||:'.$uda[84].':||:'.$uda[85].':||:'.$uda[86].':||:'.$uda[87].':||:'.$uda[88].':||:'.$uda[89].':||:'.$uda[90].':||:'.$uda[91].':||:'.$uda[92].':||:'.$uda[93].':||:'.$uda[94].':||:'.$uda[95].':||:'.$uda[96].':||:'.$uda[97].':||:'.$uda[98].':||:'.$uda[99].':||:'.$uda[100].':||:';

$fp=fopen("data/reg/$login2.dat","w");
flock($fp,LOCK_EX);           
ftruncate($fp,0);                                                                 
fputs($fp,"$t");
fflush($fp);
flock($fp,LOCK_UN);
fclose($fp); 

echo
"&#x41F;&#x440;&#x43E;&#x444;&#x438;&#x43B;&#x44C; &#x438;&#x437;&#x43C;&#x435;&#x43D;&#x435;&#x43D;!";

break;

case 
'backupdata':

class 
zipfile
{

    var 
$datasec = array(); 
    var 
$ctrl_dir = array(); 
    var 
$eof_ctrl_dir "x50x4bx05x06x00x00x00x00"
    var 
$old_offset 0;

    function 
add_dir($name)

    {
        
$name str_replace("\", "/", $name);

        
$fr = "x50x4bx03x04";
        
$fr .= "x0ax00";   
        
$fr .= "x00x00";   
        
$fr .= "x00x00";   
        
$fr .= "x00x00x00x00"; 
        
$fr .= pack("V",0); 
        
$fr .= pack("V",0); 
        
$fr .= pack("V",0); 
        
$fr .= pack("v", strlen($name) ); 
        
$fr .= pack("v", 0 ); 
        
$fr .= $name;
        
$fr .= pack("V",$crc); 
        
$fr .= pack("V",$c_len); 
        
$fr .= pack("V",$unc_len); 
        
$this -> datasec[] = $fr;
        
$new_offset = strlen(implode("", $this->datasec));
        
$cdrec = "x50x4bx01x02";
        
$cdrec .="x00x00";    
        
$cdrec .="x0ax00";    
        
$cdrec .="x00x00";    
        
$cdrec .="x00x00";   
        
$cdrec .="x00x00x00x00"; 
        
$cdrec .= pack("V",0); 
        
$cdrec .= pack("V",0); 
        
$cdrec .= pack("V",0); 
        
$cdrec .= pack("v", strlen($name) ); 
        
$cdrec .= pack("v", 0 ); 
        
$cdrec .= pack("v", 0 ); 
        
$cdrec .= pack("v", 0 ); 
        
$cdrec .= pack("v", 0 ); 
        
$ext = "x00x00x10x00";
        
$ext = "xffxffxffxff";
        
$cdrec .= pack("V", 16 ); 
        
$cdrec .= pack("V", $this -> old_offset ); 
        
$this -> old_offset = $new_offset;
        
$cdrec .= $name;
        
$this -> ctrl_dir[] = $cdrec;
    }


    function add_file(
$data$name)
    { 
$name = str_replace("\", "/", $name);
$fr = "x50x4bx03x04";
        
$fr .= "x14x00";    
        
$fr .= "x00x00";    
        
$fr .= "x08x00";    
        
$fr .= "x00x00x00x00"; 

        
$unc_len = strlen($data);
        
$crc = crc32($data);
        
$zdata = gzcompress($data);
        
$zdata = substr( substr($zdata, 0, strlen($zdata) - 4), 2); 
        
$c_len = strlen($zdata);
        
$fr .= pack("V",$crc); 
        
$fr .= pack("V",$c_len); 
        
$fr .= pack("V",$unc_len); 
        
$fr .= pack("v", strlen($name) ); 
        
$fr .= pack("v", 0 ); 
        
$fr .= $name;
        
$fr .= $zdata;
        
$fr .= pack("V",$crc); 
        
$fr .= pack("V",$c_len); 
        
$fr .= pack("V",$unc_len); 
        
$this -> datasec[] = $fr;
        
$new_offset = strlen(implode("", $this->datasec));
        
$cdrec = "x50x4bx01x02";
        
$cdrec .="x00x00";    
        
$cdrec .="x14x00";  
        
$cdrec .="x00x00";   
        
$cdrec .="x08x00";   
        
$cdrec .="x00x00x00x00"; 
        
$cdrec .= pack("V",$crc); 
        
$cdrec .= pack("V",$c_len); 
        
$cdrec .= pack("V",$unc_len);
        
$cdrec .= pack("v", strlen($name) ); 
        
$cdrec .= pack("v", 0 ); 
        
$cdrec .= pack("v", 0 ); 
        
$cdrec .= pack("v", 0 ); 
        
$cdrec .= pack("v", 0 ); 
        
$cdrec .= pack("V", 32 ); 

        
$cdrec .= pack("V", $this -> old_offset ); 
        
$this -> old_offset = $new_offset;

        
$cdrec .= $name;
        
$this -> ctrl_dir[] = $cdrec;
    }

    function file() { 
        
$data = implode("", $this -> datasec);
        
$ctrldir = implode("", $this -> ctrl_dir);
        return
            
$data.
            
$ctrldir.
            
$this -> eof_ctrl_dir.
            pack("
v", sizeof($this -> ctrl_dir)).    
            pack("
v", sizeof($this -> ctrl_dir)). 
            pack("
V", strlen($ctrldir)).   
            pack("
V", strlen($data)).    
            "
x00x00"; 
    }
}


$abort = ignore_user_abort(1);

if (0 == (bool) ini_get('safe_mode')){
    set_time_limit(600);
}




$zipfile = new zipfile();

$fdir = opendir('data/');
while(
$file = readdir($fdir)){

    if (
$file != '.' and $file != '..'){

        if (is_file('data/'.
$file)){$zipfile->add_file(file_get_contents('data/'.$file),$file);}

        if (is_dir('data/'.
$file)){

            
$sdir = opendir('data/'.$file);

            while(
$sfile = readdir($sdir)){

                if (
$sfile != '.' and $sfile != '..'){

                    if (is_file('data/'.
$file.'/'.$sfile)){$zipfile->add_file(file_get_contents('data/'.$file.'/'.$sfile), $file.'/'.$sfile);}

        if (is_dir('data/'.
$file.'/'.$sfile)){

            
$ssdir = opendir('data/'.$file.'/'.$sfile);
            while(
$ssfile = readdir($ssdir)){
                if (
$ssfile != '.' and $ssfile != '..'){
                    if (is_file('data/'.
$file.'/'.$sfile.'/'.$ssfile)){$zipfile->add_file(file_get_contents('data/'.$file.'/'.$sfile.'/'.$ssfile), $file.'/'.$sfile.'/'.$ssfile);}

}}}}}}}}

$save=$zipfile->file();

$fp=fopen("backups/v2/data_files.zip","w");  
flock(
$fp,LOCK_EX);                                                     
fputs(
$fp,"$save");
fflush(
$fp);
flock(
$fp,LOCK_UN);
fclose(
$fp);

if(
$fp){echo"Backup успешно сделан!";}

break;

}
}else{echo'Ето место только для админов';}
}else{echo"
Пароль или логин неверен!";}


include_once("
files/down.php");

?>
Онлайн: 0
Реклама