列出文件夹子目录中的文件

时间:2014-11-22 11:09:27

标签: php jquery

我有一个脚本,当客户端创建一个pdf文件时,它被放置在一个以自己的代码命名的文件夹中。这是一个名为' destcerts '的主文件夹。文件夹结构最终看起来如下图所示。作为管理员,我需要做的就是可以访问这些文件,目前我唯一可以做的就是在代码中对子目录进行硬编码,这显然是不切实际的。

我认为我能做的是,有一个选择下拉列表,其中包含一个客户列表,当被选中时,可能会触发更改事件,该事件将为所选客户端显示循环并显示文件。不幸的是,我的php或jquery不足以实现这一目标,如果有人能告诉我继续前进的方法,我将不胜感激。非常感谢

php code

<div id="viewCerts" style="display:none;">
      <?php
        $sub = 'destcerts/';

        // READ THE NAMES OF FILES IN THE SUB-DIRECTORY
        $fff = new DirectoryIterator($sub);
        $sss = array();

        foreach ($fff as $filedata)
        {
        // SKIP THE "DOT" FILES
        if ($filedata->isDot()) continue;

        // ACTIVATE THIS LINE TO RESTRICT IT TO PDF FILES ONLY
        if ($filedata->getExtension() != 'pdf') continue;


        // CREATE LINKS TO THESE FILES
        $nom = $filedata->getFilename();

        $lnk
        = '<img src="destcerts/PDF_icon_100.png" style="margin-bottom: 15px; margin-top:15px;"><br /><a href="'
        . $sub
        . '/'
        . $nom
        . '" style="color:#0099FF; text-decoration:none; font-size:12px; font-family: Verdana, Geneva, sans-serif;">'
        . $nom
        . '</a>'
        ;


        // COLLECT THE LINKS HERE
        $sss[] = $lnk;

        }

        // ACCUMULATE THE TABLE ROWS HERE
        $trs   = NULL;

        // COLLECT GROUPS OF FOUR
        If(!empty($sss)){
        while (!empty($sss))
        {
        $td1 = array_shift($sss) or NULL;
        $td2 = array_shift($sss) or NULL;
        $td3 = array_shift($sss) or NULL;
        $td4 = array_shift($sss) or NULL;

        // USE HEREDOC TO INSERT THESE INTO A TABLE ROW
        $tr  = <<<EOD
        <tr>
        <td align="center" width="20%" style="padding-bottom:20px !important;">$td1</td>
        <td align="center" width="20%" style="padding-bottom:20px !important;">$td2</td>
        <td align="center" width="20%" style="padding-bottom:20px !important;">$td3</td>
        <td align="center" width="20%" style="padding-bottom:20px !important;">$td4</td>
        </tr>
EOD;

        // APPEND THE TABLE ROW TO THE OTHER ROWS
        $trs .= $tr;
        }
        }
        else{

        $msg = "There are no files to display";

        $tr  = <<<EOD
        <tr>
        <td style="text-align:center; padding: 10px !important; font-weight: normal;">$msg</td>
        </tr>
EOD;

        $trs .= $tr;
        }

        // USE HEREDOC TO INSERT THE TABLE ROWS INTO THE TABLE
        $tab = <<<EOD
        <table id="pdfDownload" width="97%" align="center" border="1" cellspacing="10" cellpadding="0" style="border:1px solid grey; padding-bottom: 10px; margin-bottom:20px;">
        <th style="text-align:center; padding: 10px !important; padding-bottom: 20px; border:1px solid black; background-color: #3399FF; color: white; font-size: 18px !important;" colspan="4">Destruction Certificates Download</th>
        <tr>
        <th></th>
        </tr>
        $trs
        </table>
EOD;

        // SHOW THE WORK PRODUCT
        echo $tab;
?>
</div>

目录结构

.
..
destcerts
  client1
  client2
  client3
  etc

0 个答案:

没有答案