在服务端进行目录建立、删除,文件上传、删除的过程的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 相关文章推荐
56.com视频采集接口程序(PHP)
Sep 22 PHP
php中判断文件空目录是否有读写权限的函数代码
Aug 07 PHP
Laravel框架路由配置总结、设置技巧大全
Sep 03 PHP
php实现根据字符串生成对应数组的方法
Sep 22 PHP
PHP CURL 内存泄露问题解决方法
Feb 12 PHP
PHP中Session可能会引起并发问题
Jun 26 PHP
php实现遍历多维数组的方法
Nov 25 PHP
PHP的Laravel框架中使用消息队列queue及异步队列的方法
Mar 21 PHP
cakephp常见知识点汇总
Feb 24 PHP
php实现统计二进制中1的个数算法示例
Jan 23 PHP
PHP智能识别收货地址信息实例
Jan 05 PHP
PHP 范围解析操作符(::)用法分析【访问静态成员和类常量】
Apr 14 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在字符断点处截断文字的实现代码
2011/04/21 PHP
PHP 图片水印类代码
2012/08/27 PHP
php基于协程实现异步的方法分析
2019/07/17 PHP
Javascript中的数学函数
2007/04/04 Javascript
『jQuery』.html(),.text()和.val()的概述及使用
2013/04/22 Javascript
jQuery怎么解析Json字符串(Json格式/Json对象)
2013/08/09 Javascript
深入理解jQuery中live与bind方法的区别
2013/12/18 Javascript
解析jQuery的三种bind/One/Live事件绑定使用方法
2013/12/30 Javascript
jquery中对于批量deferred的处理方法
2014/01/22 Javascript
jQuery实现带玻璃流光质感的手风琴特效
2015/11/20 Javascript
Node.js环境下编写爬虫爬取维基百科内容的实例分享
2016/06/12 Javascript
Angular 页面跳转时传参问题
2016/08/01 Javascript
基于Vue实现支持按周切换的日历
2020/09/24 Javascript
解决vue页面刷新或者后退参数丢失的问题
2018/03/13 Javascript
vue 出现data-v-xxx的原因及解决
2020/08/04 Javascript
[52:40]完美世界DOTA2联赛PWL S2 Magma vs GXR 第一场 11.29
2020/12/02 DOTA
python处理二进制数据的方法
2015/06/03 Python
Swift中的协议(protocol)学习教程
2016/07/08 Python
Python解决八皇后问题示例
2018/04/22 Python
一条命令解决mac版本python IDLE不能输入中文问题
2018/05/15 Python
python爬虫获取新浪新闻教学
2018/12/23 Python
Selenium+Python 自动化操控登录界面实例(有简单验证码图片校验)
2019/06/28 Python
解决Python3 抓取微信账单信息问题
2019/07/19 Python
在 Linux/Mac 下为Python函数添加超时时间的方法
2020/02/20 Python
Python使用tkinter制作在线翻译软件
2021/02/22 Python
CSS3 3D立方体效果示例-transform也不过如此
2016/12/05 HTML / CSS
世界上最好的帽子:Tilley
2016/11/27 全球购物
香港草莓网:Strawberrynet香港
2019/05/10 全球购物
Lookfantastic澳大利亚官网:英国知名美妆购物网站
2021/01/07 全球购物
股权转让意向书
2014/04/01 职场文书
代领报检证委托书范本
2014/10/11 职场文书
老人再婚离婚协议书范本
2014/10/27 职场文书
2014年团支部年度工作总结
2014/12/24 职场文书
五年级小学生评语
2014/12/26 职场文书
运动与健康自我评价
2015/03/09 职场文书
2015年宣传部工作总结范文
2015/03/31 职场文书