Jump to content

fero57

Members
  • Posts

    5
  • Joined

  • Last visited

Posts posted by fero57

  1. Hi Kicken

     

    Thank you for the answer. I was going through your explanation a couple of times.  When I changed the tags, eg

     

    $allfiles .= '<filename>'.$dir.'/'.$f;
                
                            $allfiles .= '<filename>'.$dir.'/'.$f;   // first reading
     
                if(is_dir($dir.'/'.$f)) 
                {
                      $allfiles .= "</filename>\n";
                      readFolders($dir.'/'.$f);
                }
                $allfiles .= "</filename_AFTER>\n";          // third reading

     

    the output was

                 </filename_AFTER>

                 </filename_AFTER>

     

    not as I expected, i.e. first reading - skip if not is_dir - second reading

     

                 <filename></filename_AFTER>

                 <filename></filename_AFTER>

     

    I must be very slow on the uptake, I apologize.

     

    Thanks

     

    Fero

  2. I re-wrote the script and it worked. I also fixed the folder / filename tags.

     

    $allfiles = '';
    function readFolders($dir )
    {
        global $allfiles;
     
        $files = scandir($dir);
     
        foreach($files as $f)
        {
            if($f != '.' && $f != '..')
            {       
                if(is_dir($dir.'/'.$f)) 
                {
                         $allfiles .= "<folder>".$dir.'/'.$f."</folder>\n";
                         readFolders($dir.'/'.$f);
                }
                else
                {
                          $allfiles .= '<filename>'.$dir.'/'.$f."</filename>\n";
                }
            }
        }
        
                 $fp = fopen('xml_scandir.txt', 'w') or die('cannot open scandir.txt');
                 fwrite($fp, $allfiles);
                 fclose($fp);
    }

     

     thanks for your time

    Fero

  3. Hi Freaks

    I created a Joomla 1.5 install.xml using scandir.  For easier orientation, folders are capitalized and blue

     

    ASSETS

    - index.html

    - CSS

    - - index.html

    - - popup.css

    - - default.css

    - JS

    - - index.html

    - - form.js

    CONTROLLERS

    MODELS

    TABLES

    VIEWS

    controller.php

    index.php

    reporter.php

     

    output of the first 14 lines:

     
    <filename>ASSETS</filename>
    <filename>ASSETS/CSS</filename>
    <filename>ASSETS/CSS/default.css</filename>
    <filename>ASSETS/CSS/incident_reporter_form.css</filename>
    <filename>ASSETS/CSS/index.html</filename>
    <filename>ASSETS/CSS/popup.css</filename>
    </filename>
    <filename>ASSETS/index.html</filename>
    <filename>ASSETS/JS</filename>
    <filename>ASSETS/JS/incident_reporter_form.js</filename>
    <filename>ASSETS/JS/index.html</filename>
    </filename>
    </filename>
    <filename>controller.php</filename>
    <filename>CONTROLLERS</filename>

     

    My script

     

    $allfiles = '';
    function readFolders($dir )
    {
    global $allfiles;
     
        $files = scandir($dir);
     
        foreach($files as $f)
        {
            if($f != '.' && $f != '..')
            {
                $allfiles .= '<filename>'.$dir.'/'.$f;
                
                if(is_dir($dir.'/'.$f)) 
                {
                      $allfiles .= "</filename>\n";
                      readFolders($dir.'/'.$f);
                }
                $allfiles .= "</filename>\n";
            }
            
        }
        
    $fp = fopen('xml_scandir.txt', 'w') or die('cannot open file');
    fwrite($fp, $allfiles);
    fclose($fp);
    }
     
    readFolders('com_reporter');

     

    Question:

    Why do I have those extra closing tags </filename> that attach outside if(is_dir) ? I would understand if the output came with empty tags, eg <filename></filename>

     

    Thank you

     

    Fero 

×
×
  • Create New...

Important Information

We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue.