Visualizzazione dei risultati da 1 a 3 su 3

Discussione: eliminare directory

  1. #1
    Utente di HTML.it
    Registrato dal
    Nov 2007
    Messaggi
    55

    eliminare directory

    Se faccio in questo modo

    Codice PHP:
     require_once('Connections/prova.php'); 

    $dirname="archivio";
    rmdir($dirname); 
    Mi elimina la cartella logicamente deve essere vuota

    adesso ho provato una marea di script(anche quelli del manuale ufficiale php) per svuotare prima tutta la cartella e poi la cartella stessa ma nessuno mi elimina la cartella in questione

    Esempio ho preso questo script

    Codice PHP:
    require_once('Connections/prova.php');
    $dirname="archivio";
    function 
    eliminafiles($dirname){
    if(
    file_exists($dirname) && is_file($dirname)) {        
    unlink($dirname);    }elseif(is_dir($dirname)){        
    $handle opendir($dirname);        
    while (
    false !== ($file readdir($handle))) {             
    if(
    is_file($dirname.$file)){                
    unlink($dirname.$file);            
    }}        
    $handle closedir($handle);        
    rmdir($dirname);    }} 
    Ma non vuole eliminare questa benedetta cartella sia vuota che piena

  2. #2
    Prova questo codice:
    Codice PHP:
    <?php
    function remove_dir($dir
    {
        if(
    is_dir($dir)) 
        {
            
    $dir = (substr($dir, -1) != "/") ? $dir "/" $dir;
            
    $openDir opendir($dir);
            while(
    $file readdir($openDir))
            {
                if(!
    in_array($file, array(".""..")))
                {
                    if(!
    is_dir($dir.$file)) {
                        
    unlink($dir.$file);
                    } else {
                        
    remove_dir($dir.$file);
                    }
                }
            }
            
    closedir($openDir);
            
    rmdir($dir);
        }
    }
    ?>
    Se non funziona, controlla eventuali messaggi di errore (es. privilegi non corretti etc.)

  3. #3
    Utente di HTML.it
    Registrato dal
    Nov 2007
    Messaggi
    55
    Ho provato questo e funziona

    Codice PHP:
    $nome_cartella="archivio";
    function 
    deleteDir($dir) {
    if (
    substr($dirstrlen($dir)-11) != '/'$dir .= '/';
        if (
    $handle opendir($dir)) {
                while (
    $obj readdir($handle)) {
                       if (
    $obj != '.' && $obj != '..') {
                            if (
    is_dir($dir.$obj)) {
                                    if (!
    deleteDir($dir.$obj)) return false;
                            } elseif (
    is_file($dir.$obj)) {
                                    if (!
    unlink($dir.$obj)) return false;
                            }
                    }
            }    

            
    closedir($handle);

            if (!@
    rmdir($dir)) return false;
            return 
    true;
        }
    return 
    true


Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.