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写一个简单的网页版“我的世界小游戏”
这几天一直在忙着期末考试,所以一直没有更新我的博客,今天刚把我的期末作业完成了,心情澎湃,所以晚上不管怎么样,我也要写一篇博客纪念一下我上课都没有听,还是通过强大的度娘完成了我的作业的经历.(当然作业 ...
随机推荐
- maven配置本地仓库通用
只要在settings.xml文件中指定仓库就可以了,然后复制仓库到任何地方都可以使用,eclipse中指定一个settings.xml就可以了 仓库的位置是.locks所在目录
- 数据库页已标记为 RestorePending,可能表明磁盘已损坏。要从此状态恢复,请执行还原操作。
错误提示: 消息 829,级别 21,状态 1,第 1 行 数据库 ID 15,页 (1:21826) 已标记为 RestorePending,可能表明磁盘已损坏.要从此状态恢复,请执行还原操作. 引 ...
- HTML+css+html5基础+css3须知
1.定位四种 静态定位(static):文档流默认的定位方式:一般不用写. 如果没有指定元素的position属性值,元素也就是静态定位.static是position属性的默认值,它表示块 ...
- 如何使用Apache log4net库与ASP.NET MVC 5日志记录
在运行软件程序的时候,跟踪和监控日志是一种记录过程的好方法. 简介: 在运行软件程序的时候,跟踪和监控日志是一种记录过程的好方法.尤其在应用程序出错的时候,日志是我们最需要的文件.不管是在web,wi ...
- sql server2012 远程访问设置(转)
转自:http://blog.csdn.net/xiadingling/article/details/8215282 步骤 打开SQL server2012,使用windows身份登录 登录后, ...
- 002-golang安装配置
1.安装位置: 2.环境变量. path的值如下: 3.工作目录.
- django 网站的搭建(2)
这里使用nginx+uwsgi的方法来搭建生产环境 1,pip3.5 install uwsgi 下载uwsgi ,这里就不做测试了,一般不会出错 2,将django与uwsgi连接在一起 毕竟ru ...
- Mybatis Generator 使用com.mysql.cj.jdbc.Driver遇到的问题
Mybatis Generator 使用com.mysql.cj.jdbc.Driver遇到的问题 今天闲来无事,准备搭一套SSM的环境,当然所有的jar包都用最新的. Mybatis使用3.4.6, ...
- hdu5294 网络流+dijskstr
题意:给你n个墓室,m条路径,一个人在1号墓室(起点),另一个人在n号墓室(终点),起点的那个人只有通过最短路径才能追上终点的那个人,而终点的那个人能切断任意路径. 第一问——终点那人要使起点那人不能 ...
- Sitecore CMS中更改项目的模板
如何在Sitecore CMS中创建项目后更改项目的模板. 在创建项目时选择了错误的模板,或者创建了新模板并将现有项目更新为新模板时,这非常有用. 警告! 更改模板时要小心.如果原始模板具有不在新 ...