在服务端进行目录建立、删除,文件上传、删除的过程的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 相关文章推荐
十天学会php之第六天
Oct 09 PHP
PHP原生模板引擎 最简单的模板引擎
Apr 25 PHP
php中通过数组进行高效随机抽取指定条记录的算法
Sep 09 PHP
让ThinkPHP支持大小写url地址访问的方法
Oct 31 PHP
php中FTP函数ftp_connect、ftp_login与ftp_chmod用法
Nov 18 PHP
php动态生成缩略图并输出显示的方法
Apr 20 PHP
JavaScript实现滚动栏效果的方法
Apr 27 PHP
PHP MySql增删改查的简单实例
Jun 21 PHP
php之header的不同用法总结(实例讲解)
Nov 28 PHP
总结PHP代码规范、流程规范、git规范
Jun 18 PHP
PHP队列场景以及实现代码实例详解
Feb 26 PHP
PHP7 其他修改
Mar 09 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中时间轴开发(刚刚、5分钟前、昨天10:23等)
2011/10/03 PHP
php自定义函数实现JS的escape的方法示例
2016/07/07 PHP
浅谈PHP命令执行php文件需要注意的问题
2016/12/16 PHP
jQuery中parentsUntil()方法用法实例
2015/01/07 Javascript
简介JavaScript中的sub()方法的使用
2015/06/08 Javascript
全面解析JavaScript里的循环方法之forEach,for-in,for-of
2020/04/20 Javascript
jQuery实现的自定义滚动条实例详解
2016/09/20 Javascript
详解vuejs之v-for列表渲染
2017/06/22 Javascript
bootstrap table实现双击可编辑、添加、删除行功能
2017/09/27 Javascript
Vue使用枚举类型实现HTML下拉框步骤详解
2018/02/05 Javascript
基于JS实现带动画效果的流程进度条
2018/06/01 Javascript
在 vue-cli v3.0 中使用 SCSS/SASS的方法
2018/06/14 Javascript
Vue使用虚拟dom进行渲染view的方法
2019/12/26 Javascript
vue框架中props的typescript用法详解
2020/02/17 Javascript
Vue组件生命周期运行原理解析
2020/11/25 Vue.js
使用webpack和rollup打包组件库的方法
2021/02/25 Javascript
Python面向对象编程中的类和对象学习教程
2015/03/30 Python
Python3.4实现从HTTP代理网站批量获取代理并筛选的方法示例
2017/09/26 Python
python+pygame简单画板实现代码实例
2017/12/13 Python
对numpy数据写入文件的方法讲解
2018/07/09 Python
python生成器与迭代器详解
2019/01/01 Python
在django中实现页面倒数几秒后自动跳转的例子
2019/08/16 Python
Python爬虫实现使用beautifulSoup4爬取名言网功能案例
2019/09/15 Python
python的pyecharts绘制各种图表详细(附代码)
2019/11/11 Python
python实现二分类的卡方分箱示例
2019/11/22 Python
python实现FTP文件传输的方法(服务器端和客户端)
2020/03/20 Python
Python操作Jira库常用方法解析
2020/04/10 Python
Python爬虫爬取百度搜索内容代码实例
2020/06/05 Python
Python 打印自己设计的字体的实例讲解
2021/01/04 Python
使用CSS3制作倾斜导航条和毛玻璃效果
2017/09/12 HTML / CSS
HTML5 script元素async、defer异步加载使用介绍
2013/08/23 HTML / CSS
加拿大床上用品、家居装饰、厨房和浴室产品购物网站:Linen Chest
2018/06/05 全球购物
日本必酷网络直营店:Biccamera
2019/03/23 全球购物
领导接待方案
2014/03/13 职场文书
财产分割协议书范本
2014/11/03 职场文书
情人节单身感言
2015/08/03 职场文书