我找到了一个很好的演示代码,我可以用它来完成我正在尝试做的事情。但是最终产品相当丑陋,并且不允许我查看文件。就“不错”的部分而言,我有一种感觉,我应该将其视为更面向 jquery 的东西?
当我点击显示文件的链接时,我收到一个 url not found 错误。文件路径不对...
这是不正确的,脚本当前尝试导航到的内容:
http://server/var/www/html/reports/1/Doe_John/2019-04-01/Run_2_Report.pdf
这是正确的,可以在浏览器中显示文件:
http://server/reports/1/Doe_John/2019-04-01/Run_2_Report.pdf
是否有一种直接的方法可以“减去”导致问题的额外文件路径部分?我必须添加 {$_SERVER['DOCUMENT_ROOT']} 部分才能找到文件,但这似乎是现在导致问题的原因。
我还想按日期对文件进行排序,但这样做不正确。日期按月份的字母顺序排序。这可以仅用 HTML 来完成,还是我应该再次查看 Jquery 之类的东西?
PHP 在结构中显示所有 pdf 文件:
<?PHP
// Original PHP code by Chirp Internet: www.chirp.com.au
// Please acknowledge use of this code by including this header.
//Test User Vars
$region = "1";
$first_name = "John";
$last_name = "Doe";
function getFileList($dir, $recurse = FALSE)
{
// array to hold return value
$retval = array();
// add trailing slash if missing
if(substr($dir, -1) != "/") $dir .= "/";
// open pointer to directory and read list of files
$d = @dir($dir) or die("getFileList: Failed opening directory $dir for reading");
while(false !== ($entry = $d->read())) {
// skip hidden files
if($entry[0] == ".") continue;
if(is_dir("$dir$entry")) {
$retval[] = array(
"name" => "$dir$entry/",
"type" => filetype("$dir$entry"),
"size" => 0,
"lastmod" => filemtime("$dir$entry")
);
if($recurse && is_readable("{$dir}{$entry}/")) {
$retval = array_merge($retval, getFileList("{$dir}{$entry}/", TRUE));
}
} elseif(is_readable("$dir$entry")) {
$retval[] = array(
"name" => "$dir$entry",
"type" => mime_content_type("$dir$entry"),
"size" => filesize("$dir$entry"),
"lastmod" => filemtime("$dir$entry")
);
}
}
$d->close();
return $retval;
}
芜湖不芜