简单的在线文件管理(增删改操作)

分享:简单的--当前目录下的在线文件管理操作。其中包含了文件的在线浏览,删除、创建和修改等功能

用到的一些函数:

opendir — 打开目录句柄

readdir — 从目录句柄中读取条目

filectime — 取得文件的 inode 修改时间

filesize — 取得文件大小

filetype — 取得文件类型

fopen — 打开文件或者 URL

以下是具体代码(将代码自己复制下来就可以的哇):

<?php

//简单的在线文件管理

$path = "./";

$filelist=array("filesystem.php");//要过滤掉的文件

//一、根据action的信息值,做对应操作

switch($_GET[‘action‘]){

case "del": //删除一个文件

unlink($_GET["filename"]);

break;

case "create": //创建一个文件

//1.获取要创建的文件名

$filename = trim($path,"/")."/".$_POST["filename"];

//2. 判断文件是否已存在

if(file_exists($filename)){

die("要创建的文件已存在!");

}

//3. 创建这个文件

$f = fopen($filename,"w");

fclose($f);

break;

case ‘edit‘: //编辑文件信息

//1. 获取文件名

$filename=$_GET["filename"];

//2.读取文件的内容:

$fileinfo = file_get_contents($filename);

break;

case ‘update‘: //执行修改文件信息

//获取信息:文件名,内容

$filename = $_POST["filename"];

$content = $_POST["content"];

//2. 执行文件内容修改

file_put_contents($filename,$content);

break;

}

//二、浏览指定目录下的文件,并使用表格输出

//1. path目录信息的过滤,判断path存在,并期是否是个目录

if(!file_exists($path) || !is_dir($path)){

die($path."目录无效!");

}

//2. 输出表头信息

echo "<h3>{$path}目录下的文件信息<a href=‘www.hnzyxok.com‘>美日汇购物返利网</a><h3>";

echo "<h4><a href=‘filesystem.php?action=add‘>创建文件</a></h4>";

echo "<table width=‘600‘ border=‘0‘>";

echo "<tr bgcolor=‘#cccccc‘ align=‘left‘>";

echo "<th>序号</th><th>名称</th><th>类型</th><th>大小</th><th>创建时间</th><th>操作</th>";

echo "</tr>";

//3.打开这个目录,并遍历目录下面的所有文件

$dir = opendir($path);

if($dir){

$i=0;

//遍历目录中的文件,并输出文件的信息

while($f = readdir($dir)){

if($f=="." || $f==".." || in_array($f,$filelist)){

continue;//跳出本次循环,继续下一次遍历。

}

$file = trim($path,"/")."/".$f;

$i++;

echo "<tr>";

echo "<td>{$i}</td>";

echo "<td>{$f}</td>";

echo "<td>".filetype($file)."</td>";

echo "<td>".filesize($file)."</td>";

echo "<td>".date("Y-m-d H:i:s",filectime($file))."</td>";

echo "<td>

<a href=‘filesystem.php?filename={$file}&action=del‘>删除</a>

<a href=‘filesystem.php?filename={$file}&action=edit‘>修改</a>

</td>";

echo "</tr>";

}

closedir($dir); //关闭目录

}

echo "<tr bgcolor=‘#cccccc‘ align=‘left‘><td colspan=‘6‘>&nbsp;</td></tr>";

echo "</table>";

//三、判断是否需要创建文件表单,若需输出创建文件的表单框。

if($_GET[‘action‘]=="add"){

echo "<br/><br/><form action=‘filesystem.php?action=create‘ method=‘post‘>";

echo "新建文件:<input type=‘text‘ name=‘filename‘ size=‘12‘/> ";

echo "<input type=‘submit‘ value=‘新建文件‘/>";

echo "</form>";

}

//四、判断是否需要编辑文件表单,若需输出创建文件的表单框。

if($_GET[‘action‘]=="edit"){

echo "<br/><br/><form action=‘filesystem.php?action=update‘ method=‘post‘>";

echo "<input type=‘hidden‘ name=‘filename‘ value=‘{$filename}‘/>";

echo "文件名:{$filename}<br/><br/>";

echo "文件内容:<textarea name=‘content‘ cols=‘40‘ rows=‘6‘>{$fileinfo}</textarea><br/><br/>";

echo "<input type=‘submit‘ value=‘执行编辑‘/>";

echo "</form>";

}

?>

时间: 2024-10-21 15:34:48

简单的在线文件管理(增删改操作)的相关文章

PHP基础示例:简单的在线文件管理

先截个图: 下面为代码部分,由于只有一个文件,所以就不折叠了. 1 <?php 2 //简单的在线文件管理 3 4 $path = "./"; 5 $filelist=array("filesystem.php");//要过滤掉的文件 6 7 //一.根据action的信息值,做对应的操作 8 switch(@$_GET['action']) 9 { 10 case "del": //删除一个文件 11 unlink($_GET["

EasyUI----DataGrid行明细增删改操作

http://blog.csdn.net/huchiwei/article/details/7787947 本文实现的是EasyUI-DataGrid行明细的增删改操作.具体参考来自以下文章: 官方DEMO---- DataGrid ---- Master Detail 在easyui中利用DataGrid的行明细区域实现CRUD操作---- 作者:stworthy BuildCRUD Application with edit form in expanded row details jQue

easyui学习笔记1—增删改操作【转载】

最近公司要用easyui,这里自己看了官网几篇文章,遇到些问题,大多数的问题都是敲代码的时候笔误,其他有些地方确实需要注意一下,这里做些笔记. 1.在mysql中建好表之后修改id字段为递增字段,发现这个奇怪的mysql语法,如下 alter table student change id id int auto_increment; 这句是在student表已经建好的情况下来修改字段id为自增列,奇怪的是为嘛change id id,并且后面还要带上id的类型int? 2.html5标记 如何

easyui学习笔记2—在行内进行表格的增删改操作【转载】

第一篇笔记中记录了如何实现表格的增删改,那个是点击之后跳出来一个对话框然后进行的,这里是在表格本身上进行的操作,也很简单,但是这里发现一个版本问题,也可以说是兼容性问题. 1.首先我们看引用的js和css代码 <link rel="stylesheet" href="jquery-easyui-1.3.5/themes/default/easyui.css" /> <link rel="stylesheet" href=&quo

Mybatis简单的入门之增删改查

一般的步骤如下 1.添加Mybatis所需要的包,和连接数据库所需的包 2.配置mybatis-config.xml文件 3.配置与pojo对应的映射文件 mybatis-config,xml <?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE configuration PUBLIC "-//mybatis.org//DTD Config 3.0//EN" "http:/

OracleHelper(对增删改查分页查询操作进行了面向对象的封装,对批量增删改操作的事务封装)

公司的一个新项目使用ASP.NET MVC开发,经理让我写个OracleHelper,我从网上找了一个比较全的OracleHelper类,缺点是查询的时候返回DataSet,数据增删改要写很多代码(当然,可以用代码生成器,不过配套的代码生成器暂时没有):又从网上找了一个封装了泛型方法的OracleHelper类,整合到一起,但貌似数据增删改查依然不方便:于是花了两天时间,在原有基础上对增删改查分页查询操作进行了面向对象的封装,并且对批量增删改操作进行事务封装,写事务代码更方便. 原理: 1.利用

jQuery-easyui下的多表关联的增删改操作

项目用的是Hibernate+Jquery-easyui,介绍的是多表关联的增删改操作. 很简单:只需要在多表关联的表,如员工表中关联了部门表插入数据时不能直接通过网页提交表单插入关联的部门,需要在Controller处的new一个对象,通过对象添加数据. 增加 //Servlet下的代码 Dept dept = deptService.findByIdIfo(Integer.parseInt(req.getParameter("deptId"))); employee.setDept

MySQL增删改操作

增删改操作 增加 看语法 1. 插入完整数据(顺序插入) 语法一: INSERT INTO 表名(字段1,字段2,字段3-字段n) VALUES(值1,值2,值3-值n); #指定字段来插入数据,插入的值要和你前面的字段相匹配 语法二: INSERT INTO 表名 VALUES (值1,值2,值3-值n); #不指定字段的话,就按照默认的几个字段来插入数据 2. 指定字段插入数据 语法: INSERT INTO 表名(字段1,字段2,字段3-) VALUES (值1,值2,值3-); 3. 插

【2017-05-02】winform弹出警告框是否进行增删改操作、记事本制作、对话框控件和输出输入流

一.winform弹出警告框是否进行增删改操作 第一个参数是弹出窗体显示的内容,第二个参数是标题,第三个参数是该弹窗包含确定和取消按钮. 返回的是一个枚举类接收一下. 再进行判断,如果点的是确定按钮,再进行下一步的增删改操作. 二.记事本的制作 1.菜单工具栏MenuStrip-插入标准项 2.TextBox -显示部分 小箭头 MultiLine 选中多行 Dock属性占满. 3.功能 - 撤销 - 剪切 - 粘贴 - 复制 - 删除 - 全选 - 时间 - 查找 单独做一个窗体点击打开 把主