php rmdir oder Verknüpfung der Datei mit dem Ordner aufheben
Frage
Der folgende Code löscht die Dateien in einem Ordner uploads
.Wie lösche ich auch den Ordner, wenn ein Benutzer darauf klickt? Delete Folder
(o.ä).
Ich habe es mit versucht rmdir
aber ich erhalte keine Fehlermeldungen, sondern nur eine leere Datei „move.php“.
Was ist die richtige/empfohlene Vorgehensweise?Bitte um Rat.
<?php
$actfolder = $_REQUEST['folder'];
require_once("models/config.php");
if(!securePage($_SERVER['PHP_SELF'])){
die();
}
require("models/db-settings.php");
if(isset($_GET['file'])){
$filename = "uploads/$loggedInUser->username$actfolder/" . ltrim($_GET['file'], '/\\');
// make sure only deleting a file in files/ directory
if (dirname(realpath($filename)) == realpath("uploads/$loggedInUser->username$actfolder/")) {
unlink($filename);
}
}
header("Location:".$_SERVER["HTTP_REFERER"]);
?>
Lösung
Versuchen Sie einfach so etwas:
$filename = "uploads/$loggedInUser->username$actfolder/";
if (is_dir($filename) === true)
{
$files = array_diff(scandir($filename), array('.', '..'));
foreach ($files as $file)
{
unlink(realpath($filename) . '/' . $file);
}
rmdir($filename); //remove directory
}
Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow