J'ai construit un système permettant aux utilisateurs de démarrer un projet et de télécharger des fichiers dans ce projet. Quand ils créent le projet, je crée un répertoire spécifique pour ce projet et tous les téléchargements remplissent ce répertoire. Cependant, j'ai mis en place un système qui permet à l'utilisateur de supprimer ce projet s'il le souhaite, en supprimant tous les fichiers dans le répertoire puis le répertoire lui-même. Localement (sur MAMP), cela a fonctionné un charme; sur un serveur live cependant, ce n'est pas le cas. Pour la suppression de l'annuaire, j'ai utilisé un morceau de code d'un site Web tutoriel (posté ci-dessous) et comme je l'ai dit, fonctionne très bien sur un serveur web local.PHP Itérer et supprimer des problèmes de répertoire
$name = $_POST['projectName'];
rrmdir("../../project/$name");
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);
echo "Directory Removed";
}
Avez-vous les autorisations appropriées définies sur le dossier via CHMOD? –
serait-ce 777? Je le pense, mais le script semble s'arrêter juste après l'appel de la fonction. Sous la ligne rrmdir (...) j'ai quelques échos et ils ne tirent pas du tout. –