1. Advertising
    y u no do it?

    Advertising (learn more)

    Advertise virtually anything here, with CPM banner ads, CPM email ads and CPC contextual links. You can target relevant areas of the site and show ads based on geographical location of the user if you wish.

    Starts at just $1 per CPM or $0.10 per CPC.

php while loop help

Discussion in 'PHP' started by izlik, May 6, 2010.

  1. #1
    Hello

    The code bellow checks foldernames and lists them as you can se bellow. the problem i have is that they dont line up.
    First the table puts out these 3 collumns "Cars, released by, Added on" and under those "<? echo get_folders_list("mech/cars/"); ?>" is supposed to show all the folders in /mech/cars/ and put them in line under the 3 collumns the table pt out however. the output from <? echo get_folders_list("mech/cars/"); ?>" currently put those folder bellow everyting, for example if i have 2 folders in /mech/cars/ (lamborghini and open is there) the output becomes

    car realesed by Added on
    AnCo 2009-10-30 - 04:02
    AnCo 2009-10-30 - 04:02
    lamborghini opel

    when i want it to be

    car realesed by Added on
    lamborghini AnCo 2009-10-30 - 04:02
    Opel AnCo 2009-10-30 - 04:02


    why is this? I hope some one can help me fix the problem :/

    <?php
    function get_folders_list($path_to_folder_of_folders){
        $dir_handle = @opendir($path_to_folder_of_folders) or die("Unable to open $path_to_folder_of_folders");
        $folders = "";
        while ($directory = readdir($dir_handle)) {
            if($directory != "." && $directory != "..")
                if (is_dir($path_to_folder_of_folders.$directory)){
    
                   echo '<tr>';
                   $folders .= '<td>&nbsp;<a href="http://mydoimain.com/'.$directory.'">'.$directory."</a><td><br><br>";
                   echo '<td><a href="lamb" title="lab">lamb</a></td>';
                   echo '<td>2009-10-30 - 04:02</td>';
                   echo '</tr>';
                }
        }
        closedir($dir_handle);
        return $folders;
    }
    
    
    ?>
    
    <table class="records">
    <tr class="header">
    <td>car</td>
    <td class="release_column">realesed by</td>
    <td class="added_column">Added on</td>
    </tr>
    
    <? echo get_folders_list("mech/cars/"); ?>
    
    </table>
    
    PHP:
     
    izlik, May 6, 2010 IP
  2. easic

    easic Active Member

    Messages:
    37
    Likes Received:
    3
    Best Answers:
    0
    Trophy Points:
    70
    #2
    i dont know why you are doing this:
    $folders .= '<td>&nbsp;<a href="http://mydoimain.com/'.$directory.'">'.$directory."</a><td><br><br>";
    Code (markup):
    just do:
    echo '<td>&nbsp;<a href="http://mydoimain.com/'.$directory.'">'.$directory."</a></td>";
    Code (markup):
    also, you don't need to return anything on that function.

    So:

    
    <?php
    function get_folders_list($path_to_folder_of_folders){
        $dir_handle = @opendir($path_to_folder_of_folders) or die("Unable to open $path_to_folder_of_folders");
        $folders = "";
        while ($directory = readdir($dir_handle)) {
            if($directory != "." && $directory != "..")
                if (is_dir($path_to_folder_of_folders.$directory)){
    
                   echo '<tr>';
                   echo '<td>&nbsp;<a href="http://mydoimain.com/'.$directory.'">'.$directory."</a></td>";
                   echo '<td><a href="lamb" title="lab">lamb</a></td>';
                   echo '<td>2009-10-30 - 04:02</td>';
                   echo '</tr>';
                }
        }
        closedir($dir_handle);
        return;
    }
    
    
    ?>
    
    <table class="records">
    <tr class="header">
    <td>car</td>
    <td class="release_column">realesed by</td>
    <td class="added_column">Added on</td>
    </tr>
    
    <? get_folders_list("mech/cars/"); ?>
    
    </table>
    
    Code (markup):
     
    easic, May 6, 2010 IP
  3. lorkan

    lorkan Peon

    Messages:
    20
    Likes Received:
    1
    Best Answers:
    0
    Trophy Points:
    0
    #3
    also, dont forget that you are at one point using the <?php and at another point only the <? - which some webhotels dont like...
    Good piece of code otherwise :)
     
    lorkan, May 7, 2010 IP