【发布时间】:2016-09-19 02:51:34
【问题描述】:
所以棘手的部分来了。每个名为 lib 和 vendor 的目录中都有两个子目录(子目录也有一些包含文件)。所以当我以前有特定的目录名称时,我曾经使用这个
<?php
$dir = $_GET['fname'];
array_map('unlink', glob("$dir/lib/*.*"));
rmdir("$dir/lib");
array_map('unlink', glob("$dir/vendor/*.*"));
rmdir("$dir/vendor");
array_map('unlink', glob("$dir/*.*"));
rmdir($dir);`
所以我曾经有一个特定的目录名称。但现在我想改变这一点。 所以每当用户被重定向到我的脚本时
它应该删除所有早于 5 分钟的目录。仅有的 目录。
所有目录仅包含且仅包含 2 个名为 lib 和 vendor。它们也应该被删除。
这三个目录不应该被删除 project , images 和 资产。除了这些,所有目录都应该被删除。现在
请有人帮帮我。
【问题讨论】:
-
我猜猜...您使用文件夹和文本文件作为数据库正确吗?我可以建议使用适当的数据库吗?如果您无法访问 MySQL,或者如果在服务器上设置太复杂,您可以直接使用 MySQLi,它只是一个文件,旨在成为非常轻量级的数据库,易于设置和使用,并且具有适当数据库的许多好处。设置 MySQLi 后,您可以使用 SQL 运行一个简单的命令来删除所有 5 分钟前的行。
-
MySQLi 不是 SQLite。上面的答案是指 SQLite。
-
请注意,此脚本很容易被劫持以删除任意文件夹。您不应该从用户输入中删除要删除的文件夹。
-
用户什么都不知道。他注册了。使用他的用户名创建一个文件夹。在他重定向主页后,他只能使用该服务 5 分钟。
标签: php timer directory delete-directory