Вход Регистрация
Файл: ftp/ftp.php
Строк: 113
<?php

// ftp by jasis//


$title='FTP';
include
'system/head.php';
include
'system/func.php';
include
'system/ftp_connect.php';




switch(@
$act){
default:

@
$d=prov($_GET['d']);
echo
'<div><form action="ftp.php" method="get">';
echo
'Переход:<br><input type="text" name="d" value="'.$d.'" size="18"> <input type="submit" value="&#187;"></form></div><br>';
if(empty(
$d)){ $d='/'$de=''; }else{ $de=$d$d=$d.'/';} 
if(
$d!="/")   echo'<img src="img/back.png" alt="<"> <a href="ftp.php">В начало</a><br>
<img src="img/back.png" alt=".."> <a href="ftp.php?d='
.verh($d).'">Вверх</a><br><br>';
ftp_pasv($serv,true);
$lines ftp_rawlist($serv"$d");
    
// закрытие соединения
ftp_close($serv);
if(
$lines==false){
echo
'<div>Не верный путь</div>';
}else{
$couf=0$coud=0;
// вывод буфера
 
for ($i=0;$i<count($lines);$i++) {
  
$name=preg_replace("~([^s]*[s]*){8}s{1}(.*)~m","\2",$lines[$i]);
  if (
$name!="." && $name!=".." && !preg_match('/->/i',$name)){ 
     
$size=preg_replace("~([^s]*[s]*){4}s{1}([^s]*)(.*)~m","\2",$lines[$i]);
     
$chm=preg_replace("~([^s]*).*~m","\1",$lines[$i]);
     
$nchm=dechm($chm);
     if (
$size<100) {$sz=$size."b";}
     elseif (
$size<1024) {$sz=str_replace(".",",",round($size/1024,1))."kb";}
     elseif (
$size<102400) {$sz=round($size/1024)."kb";}
     else {
$sz=str_replace(".",",",round($size/1024/1024,1))."mb";}
          if (
$chm[0]=="-") {
         if(
$name==".htaccess"$nams='<span style="color: #ff0000;">'.$name.'</span>'; else $nams=$name;
 echo 
'<a href="file.php?d='.$d.$name.'">'.$nams.'</a> ['.$nchm.'] '.$sz.' <br>';
 
$couf++;
 }else{
  if(
$d!="/") echo '<a href="dir.php?d='.$d.$name.'"><img src="img/dir.gif" alt="*"></a>'; else echo'<img src="img/dir.gif" alt="*">';
  echo
' <a href="ftp.php?d='.$d.$name.'">'.$name.'</a> ['.$nchm.'] '.$sz.' <br>';
  
$coud++;
 }
 }
 }
 if(
$couf == && $coud == 0) echo'Папка пуста<br>';
 echo
'<div>Папок: '.$coud.' / Файлов: '.$couf.'</div>';
 echo
'<div class="i">Меню</div>';
 
 if(
$d!="/"){
 
 echo
'
 <a href="change.php?d='
.$de.'">Multi-Выбор</a><br>
 <a href="ftp.php?act=newdir&d='
.$de.'">Создать папку</a><br>
 <a href="ftp.php?act=newfile&d='
.$de.'">Создать файл</a><br>
 <a href="ftp.php?act=import&d='
.$de.'">Скачать файл</a><br>
 <a href="ftp.php?act=upload&d='
.$de.'">Выгрузить файл</a><br>
 '
;
 }
 }

 echo
'<a href="index.php?act=exit">Выйти с панели</a>';
break;

case
'newdir':
@
$d=prov($_GET['d']);
if(empty(
$d)){ 
echo 
error('Ошибка, нет нужных данных','ftp.php','Назад');
}else{
ftp_pasv($serv,true);
$lines ftp_rawlist($serv"$d");
if(
$lines==false){
echo 
error('Не верный путь','ftp.php','Назад');
}else{
if(isset(
$_GET['go']) && !empty($_POST['name'])){ 
if(
preg_match('#[^a-zA-Z0-9_-]#ui',$_POST['name'])){
 echo 
error('Обнаружены запрещенные символы','ftp.php?d='.$d,'Назад');
}else{
$dir=$d.'/'.$_POST['name'];
if (
ftp_mkdir($serv,$dir)) {
 echo 
error('Папка успешно создана','ftp.php?d='.$d,'Назад');
} else {
 echo 
error('Не удалось создать папку','ftp.php?d='.$d,'Назад');
}
}
}else{
echo
'<div><form action="ftp.php?go&act=newdir&d='.$d.'" method="post">';
echo
'В название папки можна использовать (A-Za-z0-9_-):<br><input type="text" name="name" value="" size="18"> <input type="submit" value="Создать"></form></div><br>';
}
}
}
    
// закрытие соединения
ftp_close($serv);
break;

case
'newfile':
@
$d=prov($_GET['d']);
if(empty(
$d)){ 
echo 
error('Ошибка, нет нужных данных','ftp.php','Назад');
}else{
ftp_pasv($serv,true);
$lines ftp_rawlist($serv"$d");
if(
$lines==false){
echo 
error('Не верный путь','ftp.php','Назад');
}else{
if(isset(
$_GET['go']) && !empty($_POST['name'])){ 
if(
preg_match('#[^a-zA-Z0-9_-.]#ui',$_POST['name'])){
 echo 
error('Обнаружены запрещенные символы','ftp.php?d='.$d,'Назад');
}else{
file_put_contents('tmp/'.$savedir.'/'.$_POST['name'],'',0664);
$remote_file=$d.'/'.$_POST['name'];
$file='tmp/'.$savedir.'/'.$_POST['name'];
if (
ftp_put($serv$remote_file$fileFTP_BINARY)) {
 echo 
error('Файл успешно создан','ftp.php?d='.$d,'Назад');
} else {
 echo 
error('Не удалось создать файл','ftp.php?d='.$d,'Назад');
}
@
unlink('tmp/'.$savedir.'/'.$_POST['name']);
}
}else{
echo
'<div><form action="ftp.php?go&act=newfile&d='.$d.'" method="post">';
echo
'В название файла можна использовать (A-Za-z0-9_-):<br><input type="text" name="name" value="" size="18"> <input type="submit" value="Создать"></form></div><br>';
}
}
}
    
// закрытие соединения
ftp_close($serv);
break;

case
'import':
@
$d=prov($_GET['d']);
if(empty(
$d)){ 
echo 
error('Ошибка, нет нужных данных','ftp.php','Назад');
}else{
ftp_pasv($serv,true);
$lines ftp_nlist($serv"$d");
if(
$lines==false){
echo 
error('Не верный путь','ftp.php','Назад');
}else{
if(isset(
$_GET['go']) && !empty($_POST['url'])){ 
$url=prov($_POST['url']);
$path=pathinfo($url);
if(!
copy($url,'tmp/'.$savedir.'/'.$path['basename'])){
 echo 
error('Не удалось загрузить файл','ftp.php?d='.$d,'Назад');
}else{
$remote_file=$d.'/'.$path['basename'];
$file='tmp/'.$savedir.'/'.$path['basename'];
$size=round(filesize('tmp/'.$savedir.'/'.$path['basename'])/1024);
if (
ftp_put($serv$remote_file$fileFTP_BINARY)) {
 echo 
error('Файл размером '.$size.'kb успешно импортирован','ftp.php?d='.$d,'Назад');
} else {
 echo 
error('Не удалось импортировать файл','ftp.php?d='.$d,'Назад');
}
unlink('tmp/'.$savedir.'/'.$path['basename']);
}
}else{
echo
'<div><form action="ftp.php?go&act=import&d='.$d.'" method="post">';
echo
'Введите адрес файла:<br><input type="text" name="url" value="" size="18"> <input type="submit" value="Импортировать"></form></div><br>';
}
}
}
    
// закрытие соединения
ftp_close($serv);
break;

case
'upload':
@
$d=prov($_GET['d']);
if(empty(
$d)){ 
echo 
error('Ошибка, нет нужных данных','ftp.php','Назад');
}else{
ftp_pasv($serv,true);
$lines ftp_nlist($serv"$d");
if(
$lines==false){
echo 
error('Не верный путь','ftp.php','Назад');
}else{
if(isset(
$_GET['go']) && !empty($_FILES['file'])){ 
if(
is_uploaded_file($_FILES['file']['tmp_name'])){
if(isset(
$_FILES['file']['size'])){$fsize=round($_FILES['file']['size']/1024);}else{$fsize=0;}
$path=pathinfo($_FILES['file']['name']);
 if(
$fsize>$maxupload){
echo 
error('Максимальный вес файла не может привышать '.$maxupload.'kb ','ftp.php?d='.$d,'Назад');
}else{
if(!
copy($_FILES['file']['tmp_name'],'tmp/'.$savedir.'/'.$path['basename'])){
 echo 
error('Не удалось загрузить файл','ftp.php?d='.$d,'Назад');
}else{
$remote_file=$d.'/'.$path['basename'];
$file='tmp/'.$savedir.'/'.$path['basename'];
if (
ftp_put($serv$remote_file$fileFTP_BINARY)) {
 echo 
error('Файл размером '.$fsize.'kb успешно загружен','ftp.php?d='.$d,'Назад');
} else {
 echo 
error('Не удалось загрузить файл на ftp сервер','ftp.php?d='.$d,'Назад');
}
unlink('tmp/'.$savedir.'/'.$path['basename']);
}
}
}else{echo 
error('Не удалось загрузить файл на сервер','ftp.php?d='.$d,'Назад');}
}else{
echo
'<div><form action="ftp.php?go&act=upload&d='.$d.'" method="post" enctype="multipart/form-data">';
echo
'Выберите файл:<br><input type="file" name="file" size="18"> <input type="submit" value="Загрузить"></form></div><br>';
}
}
}
    
// закрытие соединения
ftp_close($serv);
break;

}
include
'system/foot.php';

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