Un bouton pour supprimer un répertoire fichiers et dossiers
Fermésolarian_4612 Messages postés 7 Date d'inscription vendredi 2 septembre 2022 Statut Membre Dernière intervention 15 septembre 2022 - 15 sept. 2022 à 16:26
- Un bouton pour supprimer un répertoire fichiers et dossiers
- Impossible de supprimer un fichier - Guide
- Comment ouvrir un fichier epub ? - Guide
- Comment réduire la taille d'un fichier - Guide
- Supprimer une page word - Guide
- Supprimer compte instagram - Guide
4 réponses
Modifié le 14 sept. 2022 à 19:02
Salut solarian_4612,
Lorsque tu postes du code sur CCM, fais le en utilisant le bouton "Insérer un extrait de code" (à droite du bouton "Image" dans la barre d'outils) en choisissant le langage de programmation. Cela sera plus lisible.
Je n'ai pas essayé, ni regardé en détails ton code .php.
Cependant, dans ton fichier .html le
onclick= "RepEfface($dir)"
ne fait pas ce que tu penses. Il tente de lancer une fonction JavaScript RepEfface(), qui n'existe pas. De plus $dir n'est pas une syntaxe JavaScript pour désigner une variable et, d'ailleurs, tu ne récupères aucune variable JavaScript "dir" ou autre dans ton code dans ton fichier .html.
Une façon de faire simple pour exécuter un script .php à partir d'un bouton de ton code .html est de mettre ton bouton que tu crées avec une balise <input type="submit"> dans un formulaire avec la balise <form> et d'indiquer dans les paramètres du formulaire qu'il doit générer une requête GET vers ta page .php.
Si tu mets d'autres éléments dans ton formulaire, ton script .php peut les récupérer et agir dessus.
Tu as un exemple ici : https://www.w3schools.com/php/php_forms.asp et un tutoriel simple que tu pourrais suivre pour le familiariser avec ces fonctionnements.
Je te déconseille très fortement que ton script .php supprime le contenu de répertoires récursivement sur la base d'une saisie de l'utilisateur à moins que tu saches très exactement ce que tu fais et que tu contrôles la saisie ou que tu maîtrises exactement la portée des actions qui seront effectuées sur cette base.
14 sept. 2022 à 19:04
merci pour ta réponse, je vais retester dans ce sens.
je n'avais pas vue la fenêtre pour le code. je le saurais a l'avenir
a bientôt pour le retour
Modifié le 15 sept. 2022 à 15:46
bonjour, jours de l'incompréhension de mon coté semble t il ...
rappel: un formulaire rempli des documents , ces documents sont chargés dans un dossier temporaire où il seront ajouté a une archive compressée pour un téléchargement. Une fois celui-ci chargé le client efface ses données(dossiers et fichiers créés a partir de ses données) par un bouton (et a défaut plus tard sous 24h mais je n'en suis pas encore là) ...
jusqu'au téléchargement pas de soucis. Au moment de l'effacement, j'efface la page mais pas le répertoire temporaire (temp)...
<!doctype html> <html> <head> <meta charset="utf-8" /> <title> Formulaire document Homme </title> <link href="https://cdn.jsdelivr.net/npm/bootstrap@5.2.0/dist/css/bootstrap.min.css" rel="stylesheet" integrity="sha384-gH2yIJqKdNHPEq0n4Mqa/HGKIhSkIHeL5AyhkYV8i59U5AR6csBvApHHNl/vI1Bx" crossorigin="anonymous"> </head> <body> <div class="container py-5"> <h3 class="text-muted mb-4">Votre dossier en cours</h3> <h4>Date du dossier: <?php echo $date_du_dossier; ?></h4> <h4> <?php echo $iam; ?></h4> <p> <body> <h3 class="text-muted mt-5 mb-4">Vos informations sont enregistrées:</h3> <a href="<?php echo $zip_file_name; ?>" class="btn btn-success" download >Télécharger votre dossier <?php echo $prénom .' '. $nom ?></a></br> <h3 class="text-muted mt-5 mb-4">Effacez vos informations:</h3> <form action="supression.php" method="post"> <input type="submit" > Supprimer votre dossier <?php echo $prénom .' '. $nom ?> </form> </body> </div> </body> </html>
avec ça le fichier . PHP pour effacer le répertoire
"supression.php"
:
<? $dossier="documents/homme/temp"; $ouverture=opendir($dossier); $fichier=readdir($ouverture); $fichier=readdir($ouverture); while ($fichier=readdir($ouverture)) { unlink("$dossier/$fichier"); } closedir($ouverture); ?>
Modifié le 15 sept. 2022 à 16:29
pour aidez ceux et celle qui chercherait cette solution. J'ai réussis avec cette adaptation. Il reste bien entendu toute la sécurisation.. La partie html reste la même
Par contre j'ai revue la partie php
<?php $dir = "documents/homme/temp/"; $dir = new RecursiveDirectoryIterator( $dir, FilesystemIterator::SKIP_DOTS); $dir = new RecursiveIteratorIterator( $dir,RecursiveIteratorIterator::CHILD_FIRST); foreach ( $dir as $file ) { $file->isDir() ? rmdir($file) : unlink($file); } ?>