Visualizzazione dei risultati da 1 a 2 su 2
  1. #1

    Ricorsione per creare cartelle e uplodare file?

    Buon giorno a tutti...
    Ho una struttura che, cosi com'è funziona, però credo sia un po' obsoleta e macchinosa.
    Vorrei sapere per favore se con una ricorsione posso snellire il codice e rendere più performante lo script.
    //questo è quello che ho:
    Codice PHP:
    //a seconda dell'argomento scelto, vedo prima se nella cartella es: Presenti esiste una sottocartella News, 
                //dopodichè creo un'ulteriore sottocartella avente come nome la data di inserimento della news
                
    if(!is_dir($base_dir.trim($selArgomento)."/News/")){
                    echo 
    "Non esiste";
                    
    //se non esiste creo la cartella News e poi tutte le sotto cartelle con nome uguale alla data di inserimento della news
                    
    mkdir($base_dir.trim($selArgomento)."/News"0700) or die ("Impossibile creare la cartella di news");
                    
    //se è stata creata la sottocartella News per es. dei Presenti dopodichè creo le sottocartelle con nome uguale alla data di inserimento della news
                    
    if(!is_dir($base_dir.trim($selArgomento)."/News/".inv_data(trim($txtDataIns)))){
                        
    //creo solo le sottocartelle con nome uguale alla data di inserimento della news
                        
    mkdir($base_dir.trim($selArgomento)."/News/".inv_data(trim($txtDataIns)), 0700) or die ("Impossibile creare la sottocartella di news: " date("Y-m-d"));
                        if (
    is_uploaded_file($_FILES['txtAllegato']['tmp_name'])) {
                            
    move_uploaded_file($_FILES['txtAllegato']['tmp_name'], $base_dir.trim($selArgomento)."/News/".inv_data(trim($txtDataIns))."/".$_FILES['txtAllegato']['name']);
                        } 
                        else{
                            echo 
    "
    Errore in fase di upload del file della News!
    "
    ;
                        }
                    }
                    else{
                        if (
    is_uploaded_file($_FILES['txtAllegato']['tmp_name'])) {
                            
    move_uploaded_file($_FILES['txtAllegato']['tmp_name'], $base_dir.trim($selArgomento)."/News/".inv_data(trim($txtDataIns))."/".$_FILES['txtAllegato']['name']);
                        } 
                        else{
                            echo 
    "
    Errore in fase di upload del file della News!
    "
    ;
                        }
                    }    
                }
                else{
                    echo 
    "Si esiste la cartella News";
                                    
    //verifico se non esiste la sottocartella di News
                    
    if(!is_dir($base_dir.trim($selArgomento)."/News/".inv_data(trim($txtDataIns)))){
                        
    //creo solo le sottocartelle con nome uguale alla data di inserimento della news
                        
    mkdir($base_dir.trim($selArgomento)."/News/".inv_data(trim($txtDataIns)), 0700) or die ("Impossibile creare la sottocartella di news: " date("Y-m-d"));
                        if (
    is_uploaded_file($_FILES['txtAllegato']['tmp_name'])) {
                            
    move_uploaded_file($_FILES['txtAllegato']['tmp_name'], $base_dir.trim($selArgomento)."/News/".inv_data(trim($txtDataIns))."/".$_FILES['txtAllegato']['name']);
                        } 
                        else{
                            echo 
    "
    Errore in fase di upload del file della News!
    "
    ;
                        }
                    }
                    else{
                        if (
    is_uploaded_file($_FILES['txtAllegato']['tmp_name'])) {
                            
    move_uploaded_file($_FILES['txtAllegato']['tmp_name'], $base_dir.trim($selArgomento)."/News/".inv_data(trim($txtDataIns))."/".$_FILES['txtAllegato']['name']);
                        } 
                        else{
                            echo 
    "
    Errore in fase di upload del file della News!
    "
    ;
                        }
                    }    
                } 
    Praticamente come potete vedere, ci sono dei passaggi che potrebbero essere ottimizzati,come l'upload del file e la creazione di sottocartelle.
    Sapreste dirmi cortesemente come si esegue una ricorsione per la creazione di sottocartelle ed upload di file?

    Grazie mille....

  2. #2
    nessuno può darmi un'aiuto per favore?

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 © 2024 vBulletin Solutions, Inc. All rights reserved.