Drupal查询没有更新

时间:2013-09-10 16:50:52

标签: php mysql drupal drupal-6

<?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中运行查询时工作正常。

让查询不自行更新会发生什么?刷新缓存对我没用。

1 个答案:

答案 0 :(得分: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;
}
?>

以上代码未经过直接测试。