在服务端进行目录建立、删除,文件上传、删除的过程的php代码


Posted in PHP onSeptember 10, 2008

<?php
extract($_POST);
extract($_GET);
?>
<html>
<head>
<title>查看服务器端目录和文件</title>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312">
</head>

<body bgcolor="#FFFFFF" text="#000000">
<form name="form1" method="post" action="<?php echo $_SERVER[PHP_SELF]; ?>">
<font color="#006633">输入目录名: </font>
<input type="text" name="InputDirRoot" value="<?=$InputDirRoot?>">
<input type="submit" name="Submit" value="查看该目录内容">
</form>
<form name="form1" method="post" action="<?php echo $_SERVER[PHP_SELF]; ?>">
<input type=hidden name="method" value="createdir">
<font color="#006633">输入目录名: </font>
<input type="text" name="InputDir" value="<?=$InputDirRoot?>">
<input type="submit" name="Submit" value="建立目录">
</form>
<form name="form1" method="post" action="<?php echo $_SERVER[PHP_SELF]; ?>" enctype="multipart/form-data">
<input type=hidden name="method" value="uploadfile">
<font color="#006633">上传目录名: </font>
<input type="text" name="InputDir" value="<?=$InputDirRoot?>">
<font color="#006633">请选择文件: </font>
<input type="file" name="UploadFile">
<input type="submit" name="Submit" value="上传文件">
</form>
<form name="form1" method="post" action="<?php echo $_SERVER[PHP_SELF]; ?>">
<input type=hidden name="method" value="drop">
<font color="#006633">请输入: </font>
<input type="text" name="Info" value="<?=$InputDirRoot?>">
<input type="submit" name="Submit" value="删除文件/目录">
</form>
<hr>
<?php
$n = 0;
if (isset($InputDirRoot))
{
$handle=opendir($InputDirRoot);
echo "目录列表:<font color=#FF0000>".$InputDirRoot."</font><br><hr>";
while ($file = readdir($handle))
{
$n ++;
if (is_dir($InputDirRoot."/".$file))
$file = "<a href=\"$_SERVER[PHP_SELF]?InputDirRoot=$InputDirRoot/$file\"><font color=#006600>[".$file."]</font></a>";
else
$file = "<a href=\"typefile.php?filename=$InputDirRoot/$file\" target=_blank><font color=#993300>".$file."</font></a>";
echo " ".$file."<br>";
}
closedir($handle);
}

if(isset($method) && isset($InputDir) && strcmp($method,"createdir")==0){//建立目录
if(is_dir($InputDir)){
chmod($InputDir,0777);
echo "目录已存在!权限修改完毕!";
}else{
if(@mkdir("$InputDir")){
echo "目录建立完毕...!";
}else{
echo "目录建立失败...!";
}
chmod($InputDir,0777);
}
}

if(isset($method) && isset($InputDir) && strcmp($method,"uploadfile")==0){//上传文件或删除文件
if(is_file($InputDir."/".$_FILES[UploadFile][name])){
chmod($InputDir."/".$_FILES[UploadFile][name],0777);
echo "文件存在!已经删除!--您可以重新上传文件";
unlink($InputDir."/".$_FILES[UploadFile][name]);
}else{
if(@copy($_FILES[UploadFile][tmp_name],$InputDir."/".$_FILES[UploadFile][name])){
echo "文件{$_FILES[UploadFile][name]}正确的拷贝到{$InputDir}内...!";
}else{
echo "文件拷贝失败...!";
}
chmod($InputDir."/".$_FILES[UploadFile][name],0777);
}
}

if(isset($Info) && strcmp($method,"drop")==0){//删除文件或目录
if(is_dir($Info)){
if(rmdir($Info)){
echo "目录{$Inof}删除完毕";
}else{
echo "目录无法删除!原因--可能是目录下还存在文件!";
}
}
if(is_file($Info)){
if(unlink($Info)){
echo "文件{$Info}删除完毕...!";
}else{
echo "文件{$Info}删除失败...!尝试修改文件权限删除...";
if(chmod($Info,0777)){
unlink($Info);
echo "文件{$Info}权限修改后删除完毕...";
}else{
echo "文件{$Info}无法通过WEB方式删除,可能是FTP权限对此文件有所设置...";
}
}
}
}

echo "<hr>";
echo "总共 $n 项.";
?>
</body>
</html>

PHP 相关文章推荐
人大复印资料处理程序_输入篇
Oct 09 PHP
生成静态页面的PHP类
Nov 25 PHP
php实现在线生成条形码示例分享(条形码生成器)
Dec 30 PHP
PHP+jQuery 注册模块开发详解
Oct 14 PHP
php的GD库imagettftext函数解决中文乱码问题
Jan 24 PHP
深入解析PHP中foreach语句控制数组循环的用法
Nov 30 PHP
2017年最新PHP经典面试题目汇总(上篇)
Mar 17 PHP
php实现的pdo公共类定义与用法示例
Jul 19 PHP
PHP重置数组为连续数字索引的几种方式总结
Mar 12 PHP
PHP获取访问设备信息的方法示例
Feb 20 PHP
PHP中-&gt;和=&gt;的含义及使用示例解析
Aug 06 PHP
php 防护xss,PHP的防御XSS注入的终极解决方案
Apr 01 PHP
php面向对象的方法重载两种版本比较
Sep 08 #PHP
php+AJAX传送中文会导致乱码的问题的解决方法
Sep 08 #PHP
php chr() ord()中文截取乱码问题解决方法
Sep 08 #PHP
wiki-shan写的php在线加密的解密程序
Sep 07 #PHP
php单件模式结合命令链模式使用说明
Sep 07 #PHP
网友原创的PHP模板类代码
Sep 07 #PHP
php 特殊字符处理函数
Sep 05 #PHP
You might like
使用PHP模拟HTTP认证
2006/10/09 PHP
php设计模式之简单工厂模式详解
2014/09/04 PHP
PHP实现的自定义数组排序函数与排序类示例
2016/11/18 PHP
用JS操作FRAME中的IFRAME及其内容的实现代码
2008/07/26 Javascript
JavaScript中的Array对象使用说明
2011/01/17 Javascript
对setInterval在火狐和chrome切换标签产生奇怪的效果之探索,与解决方案!
2011/10/29 Javascript
Three.js源码阅读笔记(光照部分)
2012/12/27 Javascript
JS实现图片产生波纹一样flash效果的方法
2015/02/27 Javascript
JavaScript将数字转换成大写中文的方法
2015/03/23 Javascript
JavaScript点击按钮后弹出透明浮动层的方法
2015/05/11 Javascript
详解微信小程序开发之——wx.showToast(OBJECT)的使用
2017/01/18 Javascript
jQuery插件FusionCharts实现的MSBar3D图效果示例【附demo源码】
2017/03/23 jQuery
浅谈JS封闭函数、闭包、内置对象
2017/07/18 Javascript
Angularjs 事件指令详细整理
2017/07/27 Javascript
JS实现点击复选框变更DIV显示状态的示例代码
2017/12/18 Javascript
微信小程序实现弹出菜单动画
2019/06/21 Javascript
layui实现左侧菜单点击右侧内容区显示
2019/07/26 Javascript
[01:20:06]TNC vs VG 2018国际邀请赛小组赛BO2 第二场 8.16
2018/08/17 DOTA
Python读取一个目录下所有目录和文件的方法
2016/07/15 Python
python 网络编程常用代码段
2016/08/28 Python
基于python脚本实现软件的注册功能(机器码+注册码机制)
2016/10/09 Python
对numpy中轴与维度的理解
2018/04/18 Python
python使用RNN实现文本分类
2018/05/24 Python
Python实现数据可视化看如何监控你的爬虫状态【推荐】
2018/08/10 Python
Python os.rename() 重命名目录和文件的示例
2018/10/25 Python
Python Numpy:找到list中的np.nan值方法
2018/10/30 Python
在win10和linux上分别安装Python虚拟环境的方法步骤
2019/05/09 Python
django 数据库 get_or_create函数返回值是tuple的问题
2020/05/15 Python
pyecharts在数据可视化中的应用详解
2020/06/08 Python
CSS3 background-image颜色渐变的实现代码
2018/09/13 HTML / CSS
学院书画协会部门职责
2013/11/28 职场文书
毕业生个人求职信范文分享
2014/01/05 职场文书
怎么写好自荐书
2014/03/02 职场文书
倡议书范文格式
2014/05/12 职场文书
房地产活动策划方案
2014/05/14 职场文书
社区两委对照检查材料
2014/08/23 职场文书