Pagina 1 di 2 1 2 ultimoultimo
Visualizzazione dei risultati da 1 a 10 su 13

Discussione: ordinare cartelle

  1. #1

    ordinare cartelle

    Buon giorno, mi ritrovo a dover visualizzare le cartelle in base ad un ordine ben preciso.
    In questo modo:
    codice:
    1° curriculum_vitae
    2° normativa
    3° programmazione
    4° procedure
    Non so come fare..
    Sto cercando di documentarmi ma non ne vengo a capo.
    Ho utilizzato il glob(), ma la versione che ho la 4.1.2 non mi permette l'utilizzo.
    Con gli array sort e asort non mi riesce.
    Anche facendo in questo modo, non capisco perchè non lo ordina come voglio:
    codice:
    $frutta = array("a"=>"curriculum_vitae", "b"=>"normativa", "c"=>"programmazione", "d"=>"procedure");
    asort($frutta);
    reset($frutta);
    while (list($chiave, $valore) = each($frutta)) {
    	   echo "$chiave = $valore\n";
    }
    
    //risultato
    a = curriculum_vitae b = normativa d = procedure c = programmazione

    Come devo fare?
    questo è il codice:
    codice:
    $path="DOC/";
    	
    	if (is_dir($path)) {
    		//$paths=glob($path.'*', GLOB_MARK|GLOB_ONLYDIR|GLOB_NOSORT);
    		if ($handle = opendir($path)) {
    			
    			echo "<ul class=\"tree-menu\">";
    			//vedo la cartella
    			while(($file=readdir($handle))!==false) {
    				
    				if(($file != '.') && ($file != '..') && ($file != 'Thumbs.db')){
    					
    					echo "[*]<a href=\"javascript:void(0)\">".strtoupper(str_replace("_"," ",$file))."</a>";
    Posto solo la prima parte di codice quella relativa alla visualizzazione delle cartelle
    Se potete aiutarmi per favore.
    Grazie mille

  2. #2
    Utente di HTML.it L'avatar di m4rko80
    Registrato dal
    Aug 2008
    residenza
    Milano
    Messaggi
    2,654
    alfabeticamente e' bagliato
    codice:
    1° curriculum_vitae
    2° normativa
    3° programmazione
    4° procedure
    dato che la C viene prima della G.
    Con
    Codice PHP:

    $frutta 
    = array("a"=>"curriculum_vitae""b"=>"normativa""c"=>"programmazione""d"=>"procedure");
    asort($frutta);
    reset($frutta);
    foreach (
    $frutta as $key => $val) {
        echo 
    "$key = $val\n";

    l'ordine e' corretto se e' questo che volevi:

    a = curriculum_vitae b = normativa d = procedure c = programmazione

  3. #3
    grazie dell'interessamento.
    E....quindi come avrei dovuto fare?
    Come ordino le cartelle in base a quell'elenco?

    grazie ancora.....

  4. #4
    Non ho capito bene, tu sai gia' quali sono le directory che si trovano in DOC? Perche' i casi sono due: se lo sai, allora basta stampare l'array; se non lo sai allora devi stabilire una regola, non una lista di esempio.

  5. #5
    si, so le cartelle della directory principale DOC e vorrei visualizzarle in base all'ordine postato.
    Come faccio?

  6. #6
    Beh visto che l'array lo crei tu gia' ordinato...

    Codice PHP:
    foreach ($array_delle_dir as $directory) {
        
    // fai quello che devi con 'DOC/$directory'


  7. #7
    non ho capito...scusami!!!
    Dov'è che lo ordino?

  8. #8
    Utente di HTML.it L'avatar di m4rko80
    Registrato dal
    Aug 2008
    residenza
    Milano
    Messaggi
    2,654
    Intendeva cosi' dato che conosci l'ordine a priori :

    Codice PHP:
    $array_delle_dir  = array('cartella1''cartella2''cartella3');
    foreach (
    $array_delle_dir as $directory) {
        
    // fai quello che devi con 'DOC/$directory'


  9. #9
    vi ringrazio....adesso sembra essere ordinato.
    Devo applicarlo alla visualizzazione delle cartelle, ma non riesco per limitate conoscenze, sto facendo in questo modo, ma mi restituisce una monnezza:
    codice:
    $path="DOC/";
    $array_delle_dir = array("a"=>"curriculum_vitae", "b"=>"normativa", "c"=>"programmazione", "d"=>"procedure");	
    	if (is_dir($path)) {
    		if ($handle = opendir($path)) {
    			
    			echo "<ul class=\"tree-menu\">";
    			//vedo la cartella
    			while(($file=readdir($handle))!==false) {
    				
    				if(($file != '.') && ($file != '..') && ($file != 'Thumbs.db')){
    					foreach ($array_delle_dir as $file) {
    					echo "[*]<a href=\"java-script:void(0)\">".strtoupper(str_replace("_"," ",$file))."</a>";
                                            }
    aiutooooo :\

  10. #10
    Non e' esattamente chiaro il risultato che vuoi ottenere, comunque dai un'occhiata a questo codice:

    codice:
    <?php
    $path = 'DOC/';
    $array_delle_dir = array('curriculum_vitae', 'normativa', 'programmazione', 'procedure');
    
    if (is_dir($path)) {
        foreach ($array_delle_dir as $dir) {
            echo "Directory: $dir
    \n";
            echo "<ul>\n";
            $dh = opendir($path.$dir);
            while ($file = readdir($dh)) {
                if (!preg_match("#^\.\.?$#", $file)) {
                    echo "[*]$file\n";
                }
            }
            closedir($dh);
            echo "[/list]\n";
        }
    }
    ?>

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.