php 网页版 ftp 小工具
<?php
define('IN_ECS', true);
session_start();
header("Content-type:text/html;charset=utf-8");
date_default_timezone_set('PRC');
$dir = isset($_GET['dir']) ? $_GET['dir'] : './';
$handle = opendir($dir);
$_session = $_SESSION['user_id'] = 1234;
$_logs = new Logs('./', 'lzw.php_logs.txt'); if (isset($_POST['upload'])) {
if (is_uploaded_file($_FILES['myfile']['tmp_name'])) {
$_size = 1024 * 1000 * 1000;
// $_allowType = array();
// if($_FILES['myfile']['type']){
// }
if ($_FILES['myfile']['error'] > 0) {
echo('上传失败');
}
if ($_FILES['myfile']['size'] > $_size) {
echo('超出允许的' . $_size . '字节上传大小限制');
}
if (!move_uploaded_file($_FILES['myfile']['tmp_name'], $_POST['path'] . '/' . $_FILES['myfile']['name'])) {
echo '不能将文件移动到指定目录';
} else {
$str = '↑↑↑upload↑↑↑> ' . date('Y-m-d H:i:s', time()) . ' User: ' . $_session . ' upload file ' . $_POST['path'] . $_FILES['myfile']['name'] . "\r\n";
$_logs->setLog($str);
header('Location: lzw.php?dir=' . $_POST['path']);
}
} else {
echo('恶意的用户无法欺骗脚本去访问本不能访问的文件');
} } if (isset($_POST['mkdir'])) {
$_path = $_POST['path'] . '/' . $_POST['dir_name'];
mkdir($_path, 0777);
header('location:lzw.php?dir=' . $_POST['path']);
$str = '+++++mkdir++++++++> ' . date('Y-m-d H:i:s', time()) . ' User: ' . $_session . ' mkdir file ' . $_path . "\r\n";
$_logs->setLog($str);
} if (isset($_GET['delf'])) {
unlink($_GET['delf']);
header('location: lzw.php?dir=' . $_GET['lastUrl']);
$str = '-----delfile------> ' . date('Y-m-d H:i:s', time()) . ' User: ' . $_session . ' delete file ' . $_GET['delf'] . "\r\n";
$_logs->setLog($str);
} if (isset($_GET['deld'])) {
deldir($_GET['deld']);
header('location: lzw.php?dir=' . $_GET['lastUrl']);
$str = '-----deldir-------> ' . date('Y-m-d H:i:s', time()) . ' User: ' . $_session . ' delete dir ' . $_GET['deld'] . "\r\n";
$_logs->setLog($str);
}
if (isset($_GET['download'])) {
$download = $_GET['download'];
if (!file_exists($_GET['download'])) {
echo '文件不存在';
exit();
} else {
$file = fopen($download, "r");
header("Content-Type:application/octet-stream");
header("Accept-Ranges:Bytes");
header("Accept-Length:" . filesize($download));
header("Content-Disposition:attachment;filename=" . $_GET['filename']);
echo fread($file, filesize($download));
fclose($file);
$str = '↓↓↓download↓↓> ' . date('Y-m-d H:i:s', time()) . ' User: ' . $_session . ' download dir ' . $_GET['download'] . "\r\n";
$_logs->setLog($str);
exit();
}
}
if (isset($_GET['read'])) {
$content = file_get_contents($_GET['read']);
exit("<textarea style='width: 100%;height: 100%;'>{$content}
php 网页版 ftp 小工具的更多相关文章
- jQuery实践-网页版2048小游戏
▓▓▓▓▓▓ 大致介绍 看了一个实现网页版2048小游戏的视频,觉得能做出自己以前喜欢玩的小游戏很有意思便自己动手试了试,真正的验证了这句话-不要以为你以为的就是你以为的,看视频时觉得看懂了,会写了, ...
- 网页抓取小工具(IE法)
网页抓取小工具(IE法)—— 吴姐 http://club.excelhome.net/thread-1095707-1-1.html 用IE提取网页资料的好处在于:所见即所得,网页上能看到的信息一般 ...
- autoit获取ie浏览器简单操作网页(GUI小工具)
需要稍稍熟悉一下autoti提供的语言, 我简单做了一个带GUI的小工具,实现根据IE标题点击页面内的LinkText 注意:使用时IE窗口是显示状态才可以获取到(可以在脚本中加入搜索IE句柄,将ie ...
- Android 发版的小工具
Android加固包签名 我们知道自己的apk在上传市场的时候, 为了更好的包含我们的代码需要加固服务, 加固后的apk是不能直接安装的, 需要我们手动签名. 关于Android签名的知识就不在赘述了 ...
- jQuery网页版五子棋小游戏源码下载
体验效果:http://hovertree.com/texiao/game/4/ 网页五子棋源代码: <!DOCTYPE html> <html> <head> & ...
- js 创建书签小工具之理论
我们一直在寻找增加浏览体验的方法,有的方法众所周知,有的则鲜为人知.我原本认为书签小工具属于后者,非常令人讨厌的东西.令我非常懊恼的是我发现在这个问题上我完全是错误的.它并不是令人厌烦的,而是以用户为 ...
- jQuery实践-别踩白块儿网页版
▓▓▓▓▓▓ 大致介绍 终于结束了考试,放假回家了.这次的别踩白块儿网页版要比之前做的 jQuery实践-网页版2048小游戏 要简单一点,基本的思路都差不多. 预览:别踩白块网页版 这篇博客并不是详 ...
- 小白突破百度翻译反爬机制,33行Python代码实现汉译英小工具!
表弟17岁就没读书了,在我家呆了差不多一年吧. 呆的前几个月,每天上网打游戏,我又不好怎么在言语上管教他,就琢磨着看他要不要跟我学习Python编程.他开始问我Python编程什么?我打开了我给学生上 ...
- 分享:计算机图形学期末作业!!利用WebGL的第三方库three.js写一个简单的网页版“我的世界小游戏”
这几天一直在忙着期末考试,所以一直没有更新我的博客,今天刚把我的期末作业完成了,心情澎湃,所以晚上不管怎么样,我也要写一篇博客纪念一下我上课都没有听,还是通过强大的度娘完成了我的作业的经历.(当然作业 ...
随机推荐
- Golang--Hello World
//1)go语言以包作为管理单位 //2)每个文件必须先声明包 //3)程序必须有一个main包 package main import "fmt" //入口函数 func mai ...
- [LeetCode] 154. Find Minimum in Rotated Sorted Array II_Hard
Suppose an array sorted in ascending order is rotated at some pivot unknown to you beforehand. (i.e. ...
- Junit + String/Integer/ArrayList/HashMap/TreeMap 基本使用Demo
package JavaTest.test; import java.util.ArrayList; import java.util.HashMap; import java.util.List; ...
- myloader原理介绍
myloader恢复主要流程 1.首先由myloader主线程完成建库建表,依次将备份目录下建库和建表文件执行应用到目标数据库实例中: 2.接着myloader主线程会生成多个工作线程,由这些 ...
- android逆向四则运算
不断更新 除法: ; bRet = a/b+; return bRet; .text:00001010 a = R0 ; int.text:00001010 b = R1 ; int.text:000 ...
- phpcs
phpcs(代码规范) https://juejin.im/post/5b18fdeb6fb9a01e573c3cb3 https://laravel-china.org/docs/psr/psr-2 ...
- SQL语句提取某列中的HTML文本内容。或者说怎么用SQL语句去除所有HTML标签
CREATE FUNCTION [dbo].[f_trimstr] ( @str NVARCHAR(MAX) ) RETURNS NVARCHAR(MAX) AS BEGIN ...
- <2>Cocos Creator文件结构
1.文件结构 当新建HelloWorld项目后会自动出现以下文件夹结构 ProjectName(项目文件夹名称) |------assets |------library |------local | ...
- MD5解密
国外http://md5.rednoize.com/http://www.milw0rm.com/md5/list.php国内http://www.neeao.com/md5/http://www ...
- 认识ZTree
ZTree基本知识 zTree 是一个依靠 jQuery 实现的多功能 “树插件”.优异的性能.灵活的配置.多种功能的组合是 zTree 最大优点. 一.最简单的树(标准的json数据): 1.set ...