首先,我知道要使用Unlink从目录中删除单个文件。然而,我想知道的是如何设置,以便我可以有一个html界面,并能够选择通过目录中的所有文件。从目录中删除文件
代码会很好,但向你询问优秀的人是不公平的。所以向正确的方向推进将是一样的好。
首先,我知道要使用Unlink从目录中删除单个文件。然而,我想知道的是如何设置,以便我可以有一个html界面,并能够选择通过目录中的所有文件。从目录中删除文件
代码会很好,但向你询问优秀的人是不公平的。所以向正确的方向推进将是一样的好。
您可以参考here获取开源版本的php文件管理器。您可以查看其代码或直接使用它。通过在此粘贴示例代码来完成该操作并不容易。
以下函数用于删除整个目录。
function readDirectory($dir){
$dir = opendir($dir);
while (($file = readdir($dir)) !== false)
{
if($file!="." and $file!=".."){
echo "filename: " . $file . "<br />";
}
}
closedir($dir);
}
function rrmdir($dir) {
if (is_dir($dir)) {
$objects = scandir($dir);
foreach ($objects as $object) {
if ($object != "." && $object != "..") {
if (filetype($dir."/".$object) == "dir")rrmdir($dir."/".$object); else unlink($dir."/".$object);
}
}
reset($objects);
rmdir($dir);
}
}
有2个函数用于删除整个目录,其他用于读取整个目录,只有在脚本有权限读取,删除目录时才有效。 – 2012-04-24 12:05:58
此代码列出给定目录中的所有文件,并删除链接。当点击删除按钮时,它会调用一个php文件来使用ajax(jquery)函数删除文件。 检查是否有多个文件不具有相同的名称。
列出目录中的
<?php
$directory = "your directory path";
$images = scandir($directory);
$ignore = Array(".", "..");
$count=1;
echo '<table border=1>';
foreach($images as $dispimage){
if(!in_array($dispimage, $ignore)){
echo "<tr id='del$count'><td>$count</td><td>$dispimage</td><td><input type='button' id='delete$count' value='Delete' onclick='deleteFile(\"$dispimage\",$count,\"$directory\");'></td></tr>";
$count++;
}
}
echo '</table>';
?>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript">
function deleteFile(fname,rowid,directory)
{
$.ajax({ url: "deletefile.php",
data: {"filename":fname,"directory":directory},
type: 'post',
success: function(output) {
alert(output);
$("#del"+rowid).remove();
}
});
}
</script>
deletefile.php
<?php
$filename = $_POST['filename'];
$path = $_POST['directory'];
if(file_exists($path."/".$filename)) {
unlink($path."/".$filename); //delete file
}
?>
那很美。显示所有内容,但它不会删除,但我会继续讨论它 – user1309522 2012-04-24 12:47:59
请检查您的路径中是否有jquery.js – nithi 2012-04-24 13:00:25
我在deletefile.php中犯了一个小错误。 $ filename = $ _POST ['fname'];将其更改为$ filename = $ _POST ['filename']; – nithi 2012-04-24 13:06:17
的所有文件,你whant一个完整的脚本 – Grumpy 2012-04-24 11:46:12
你的意思是你想有一个目录列表脚本,给出的链接删除文件?从['glob()'](http://php.net/manual/en/function.glob.php)开始 – DaveRandom 2012-04-24 11:46:22
你需要任何类或函数吗? – Huseyin 2012-04-24 11:47:36