在服务端进行目录建立、删除,文件上传、删除的过程的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 相关文章推荐
MYSQL环境变量设置方法
Jan 15 PHP
一个捕获函数输出的函数
Feb 14 PHP
使用php批量删除数据库下所有前缀为prefix_的表
Jun 09 PHP
php中出现空白页的原因及解决方法汇总
Jul 08 PHP
从零开始学YII2框架(一)通过Composer安装Yii2框架
Aug 20 PHP
Yii框架form表单用法实例
Dec 04 PHP
PHP输出缓冲控制Output Control系列函数详解
Jul 02 PHP
WordPress开发中短代码的实现及相关函数使用技巧
Jan 05 PHP
Zend Framework教程之Resource Autoloading用法实例
Mar 08 PHP
PHP实现多级分类生成树的方法示例
Feb 07 PHP
用PHP将Unicode 转化为UTF-8的实现方法(推荐)
Feb 08 PHP
浅谈PHP无限极分类原理
Mar 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函数array_merge用法一例(合并同类数组)
2013/02/03 PHP
解析CodeIgniter自定义配置文件
2013/06/18 PHP
php实现aes加密类分享
2014/02/16 PHP
一组PHP加密解密函数分享
2014/06/05 PHP
php动态生成版权所有信息的方法
2015/03/24 PHP
zend framework重定向方法小结
2016/05/28 PHP
PHP使用星号隐藏用户名,手机和邮箱的实现方法
2016/09/22 PHP
解决extjs grid 不随窗口大小自适应的改变问题
2014/01/26 Javascript
Node.js中使用mongoskin操作mongoDB实例
2014/09/28 Javascript
深入分析jsonp协议原理
2015/09/26 Javascript
jQuery Validation Plugin验证插件手动验证
2016/01/26 Javascript
JS中使用FormData上传文件、图片的方法
2016/08/07 Javascript
jquery插件uploadify多图上传功能实现代码
2016/08/12 Javascript
React手稿之 React-Saga的详解
2018/11/12 Javascript
Javascript confirm多种使用方法解析
2020/09/25 Javascript
Nuxt的动态路由和参数校验操作
2020/11/09 Javascript
[58:35]OG vs EG 2019国际邀请赛淘汰赛 胜者组 BO3 第二场 8.22
2019/09/05 DOTA
Python生成pdf文件的方法
2014/08/04 Python
python通过字典dict判断指定键值是否存在的方法
2015/03/21 Python
在python的类中动态添加属性与生成对象
2016/09/17 Python
Python实现快速计算词频功能示例
2018/06/25 Python
朴素贝叶斯分类算法原理与Python实现与使用方法案例
2018/06/26 Python
复化梯形求积分实例——用Python进行数值计算
2019/11/20 Python
Python中的wordcloud库安装问题及解决方法
2020/05/27 Python
Anaconda使用IDLE的实现示例
2020/09/23 Python
html5教你做炫酷的碎片式图片切换 (canvas)
2017/07/28 HTML / CSS
美国家居装饰和豪华家具购物网站:One Kings Lane
2018/12/24 全球购物
西安夏日科技有限公司Java笔试题
2013/01/11 面试题
执行总经理岗位职责
2014/02/03 职场文书
连锁酒店店长职责范本
2014/02/13 职场文书
《乞巧》教学反思
2014/02/27 职场文书
《春笋》教学反思
2014/04/15 职场文书
企业法人授权委托书
2014/09/25 职场文书
慰问信模板
2015/02/14 职场文书
《领导干部从政道德启示录》学习心得体会
2016/01/20 职场文书
在 Python 中利用 Pool 进行多线程
2022/04/24 Python