0
<?php
$search = array('.pdf', '.', '-', '_');
$replace = array('', '/', '</u>- ', ' ');
$query="SELECT  STR_TO_DATE(SUBSTR(`filename`, 1, 10),'%m.%d.%Y') as filedate, `filename`, `filepath`
FROM  `files`  
WHERE `filepath` LIKE 'sites/default/files/news/%' 
ORDER BY filedate DESC
LIMIT 4";
$results = db_query($query);

while ($row = db_fetch_array($results)) {
    echo '<tr>';
    echo '<td><u><a href=http://website.com/sites/default/files/news/'. $row["filename"] . '>' . str_replace($search, $replace, $row["filename"]) . '</a></td><br />';
    echo '</tr>';
}
?>

我的网站主页上有此代码。它提取某个文件夹中以日期开头的所有文件。目前,当我添加一个新文件时,查询不会更新,即使当我在 PHPmyadmin 中运行查询时它工作正常。

发生了什么使查询不更新自身?刷新缓存对我不起作用。

4

1 回答 1

1

首先,您不尝试更新,而是从数据库中提取数据。

我建议你使用file_scan_directory.

https://api.drupal.org/api/drupal/includes!file.inc/function/file_scan_directory/7

<?php
$files = file_scan_directory('/sites/default/files/news', '/.*\.pdf$/');
foreach ($files as $file) {
  print $file->filename;
}
?>

上面的代码没有直接测试。

于 2013-09-10T18:04:06.280 回答