verzeichnis

Einklappen
X
 
  • Filter
  • Zeit
  • Anzeigen
Alles löschen
neue Beiträge

  • verzeichnis

    hab nun folgende func:
    PHP-Code:
    function filelist ($startdir="./"$searchSubdirs=1$directoriesonly=0
    $maxlevel="all"$level=1) {
       
    //list the directory/file names that you want to ignore
       
    $ignoredDirectory[] = "."
       
    $ignoredDirectory[] = "..";
       
    $ignoredDirectory[] = "_vti_cnf";
       global 
    $directorylist;    //initialize global array
       
    if (is_dir($startdir)) { 
           if (
    $dh opendir($startdir)) { 
               while ((
    $file readdir($dh)) !== false) {
                   if (!(
    array_search($file,$ignoredDirectory) > -1)) {
                     if (
    filetype($startdir $file) == "dir") {
                           
    //build your directory array however you choose; 
                           //add other file details that you want.
                           
    $directorylist[$startdir $file]['level'] = $level;
                           
    $directorylist[$startdir $file]['dir'] = 1;
                           
    $directorylist[$startdir $file]['name'] = $file;
                           
    $directorylist[$startdir $file]['path'] = $startdir;
                           if (
    $searchSubdirs) {
                               if (((
    $maxlevel) == "all") or ($maxlevel $level)) {
                                   
    filelist($startdir $file "/"$searchSubdirs
    $directoriesonly$maxlevel$level 1);
                               }
                           }
                       } else {
                           if (!
    $directoriesonly) {
                               
    //if you want to include files; build your file array  
                               //however you choose; add other file details that you 
    want.
                             
    $directorylist[$startdir $file]['level'] = $level;
                             
    $directorylist[$startdir $file]['dir'] = 0;
                             
    $directorylist[$startdir $file]['name'] = $file;
                             
    $directorylist[$startdir $file]['path'] = $startdir;
         }}}}
               
    closedir($dh);
    }}
    return(
    $directorylist);

    Ausgabe:
    PHP-Code:
    $files filelist($_GET['dir']."/",1,1); // call the function
    foreach ($files as $list) {//print array
       
    echo "         "
    .str_replace($_GET['dir']."/","",$list['path']).$list['name'] . "<br>";

    wie kann ich das umschreiben, damit ich das als verzeichnisbaum anzeigen kann.
    Zuletzt geändert von dani_o; 17.02.2006, 13:51.
    Signatur-Text ...

  • #2
    wie kann ich das umschreiben, damit ich das als verzeichnisbaum anzeigen kann.
    mit Hilfe der Tastatur...

    Die Frage ist doch eher, was ist dein Problem dabei? Was sind deine Ansätze?

    Kommentar


    • #3
      Zum Verständnis:

      Die Ordner in den Unterverzeichnissen sollen versetzt dargestellt werden. wie beim explorer eine art baumstruktur!
      Signatur-Text ...

      Kommentar


      • #4
        Re: verzeichnis

        Das "Level" hast du - also sorge dafür, dass jede Ausgabe diesem Level entsprechend versetzt wird - bspw. durch mehrere &amp;nbsp; oder durch margin/padding, vom Script als inline-Styles ausgegeben.
        I don't believe in rebirth. Actually, I never did in my whole lives.

        Kommentar


        • #5
          hab das zwar erst mal so gelöst:
          PHP-Code:
          $files filelist($_GET
          ['dir']."/",1,1); // call the function

          foreach ($files as $list) {//print array
             
          echo "&nbsp;&nbsp;<a href=\"folder.php?dir=".$_GET['dir']."&subdir=".$list['name'] ."\" 
          onclick=\"FrameAendern('files.php?
          dir="
          .$list['path']."&subdir=".$list['name']."', 'file')\" >".$list['name'] ."</a><br>";

          aber da werden die unterverzeichnisse nicht eingerückt! Bur die ersten. jedes weiter unterunter...-verzeichniss müste um ein leerzeichen weiter nach links ...
          Signatur-Text ...

          Kommentar


          • #6
            Re: Re: verzeichnis

            Original geschrieben von wahsaga
            Das "Level" hast du - also sorge dafür, dass jede Ausgabe diesem Level entsprechend versetzt wird - bspw. durch mehrere &amp;nbsp; oder durch margin/padding, vom Script als inline-Styles ausgegeben.
            ah ja ... ich probs mal
            Signatur-Text ...

            Kommentar


            • #7
              so gelöst:
              PHP-Code:
              $i=0;
              while(
              $i<=$list['level']){
              echo 
              "&nbsp;&nbsp;";
              $i++;

              THX!
              Signatur-Text ...

              Kommentar


              • #8
                oder per ul/li, da steckt das gewünschte verhalten quasi schon drin
                Die Zeit hat ihre Kinder längst gefressen

                Kommentar


                • #9
                  ich würde eine rekursive Funktion verwenden, die bei jedem Aufruf mittels str_repeat() den Versatz vornimmt...

                  Kommentar


                  • #10
                    schön wärs in divs mit ids und dann den rest per css regeln
                    Die Milch bleibt ranzig!

                    Kommentar

                    Lädt...
                    X