首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >为Joomla 1.5使用opendir和PHP Pages组件

为Joomla 1.5使用opendir和PHP Pages组件
EN

Stack Overflow用户
提问于 2013-12-11 12:45:11
回答 1查看 324关注 0票数 0

我有一个网站运行在Joomla!1.5 (不能升级,因为模板问题)。

在这个网站上,我有一个网页,成员可以找到一些重要的文件,需要在我们的俱乐部。

我在一些文件夹中安排了这些文件,它们都使用相同的命名约定(*yyyy_documentName* )。

为了使事情变得更简单,我想使用一些格式自动列出文件。

由于Joomla不允许在文章中输入PHP,所以我安装了PHP页面组件

此组件允许您创建页面并通过菜单栏链接到它们。

也列出这些文件,我想使用PHP的opendir函数,打开文件夹并在文件夹上运行,读取文件名并格式化它们。

这是我所使用的代码:

代码语言:javascript
复制
if($handle = opendir('/media/files/')) {
  while(false !== ($entry = readdir($handle))) {
    echo $entry;
  }

  closedir($handle);
}

这给出了一个错误,因为组件从它自己的dir启动每个相对路径,而忽略了第一个/出于某种原因。

因此,我试图通过输入完整的URL (从http://).开始)来修复这个问题。

仍然没有修复,现在新的错误是(bestanden.php是PHP页面)

/home/user/public_html/components/com_php/files/bestanden.php 警告: opendir(http://www.example.com/media/files) function.opendir:未能打开dir:未在38上的中实现

有人建议我使用ftp手柄(这也是支持的)。

这方面的语法是ftp://user:password@ftp.example.com/

我对此做了一个单独的解释,结果立即出现在右边,防止了交叉攻击。如果我在浏览器中手动尝试这一点(除了它仍然要求凭据),这是有效的。

但这也没用。

我的想法快用完了。

有谁可以帮我?

溶液

感谢@Lodder

代码语言:javascript
复制
<ul>
<?php

  $path = JPATH_SITE . '/media/files/nieuwsbrieven/'; 
  $files = JFolder::files($path);  
  foreach ($files as $file) {
    // Strip extension and save name to display it
    $name = substr($file, 0, strrpos($file, '.'));
    // Exclude the index I placed inside the dir to prevent direct surfing to the folder
    if($name != "index") {
      echo "<li><a href='/media/files/nieuwsbrieven/" . $file . "' title='Nieuwsbrief " . $name . "' target='_blank'>Nieuwsbrief " . $name . "</a></li>";
    }
  }

?>
</ul>

结果

  • “纽乌斯简报”2013-04-03
  • “纽乌斯简报”2013-04-19
  • “纽乌斯简报”2013-05-16
  • “纽乌斯简报”2013-06-19
  • “纽乌斯简报”2013-07-17
  • “纽乌斯简报”2013-08-28
EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2013-12-11 12:53:45

当你尝试的时候,你真的应该看看Joomla文档。Joomla有自己的类来读取文件夹中的文件。您可以使用以下内容显示文件夹中的所有文件:

代码语言:javascript
复制
$path = JPATH_SITE . '/media/files';
$files = JFolder::files($path);

foreach ($files as $file) {
    echo $file;
}

要使用这段代码,不要考虑允许您使用自定义PHP等组件,我强烈推荐一个名为源源的插件,它允许在文章中使用PHP或JS。

有关Joomla文件系统类的更多信息,请阅读以下内容:

文件夹

希望这能有所帮助

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/20519501

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档