如何在joomla中上传文件?

时间:2011-03-24 06:16:32

标签: image upload joomla

嗨我正在joomla制作一个有名称图像细节的简单组件,我必须上传该图像如何从后端上传图像。哪一个更好使用扩展或自定义。可以请你分享任何好文章吗?我已经搜索了更多,但由于缺乏关于joomla的想法找不到。希望天才们能帮帮我。

谢谢我提前

4 个答案:

答案 0 :(得分:6)

嗨朋友请访问此链接,它可能是有用的,您正在寻找。 http://docs.joomla.org/How_to_use_the_filesystem_package

答案 1 :(得分:4)

Joomla Component对于您的要求的确切情况将很难找到。所以你有两个选择:  1.制作自己的组件  2.自定义其他类似类型的组件,如gallery组件

如果你要制作自己的组件,要从admin上的joomla组件上传文件:  1.只需使用move_uploaded_file php函数。  2.复制此代码,用于joomla的标准fxn:

    function upload($src, $dest)
    {
        jimport('joomla.client.helper');
        $FTPOptions = JClientHelper::getCredentials('ftp');
        $ret            = false;
        $dest = JPath::clean($dest);
        $baseDir = dirname($dest);
        if (!file_exists($baseDir)) {
                jimport('joomla.filesystem.folder');
                JFolder::create($baseDir);
        }

        if ($FTPOptions['enabled'] == 1) {
                jimport('joomla.client.ftp');
                $ftp = & JFTP::getInstance($FTPOptions['host'], $FTPOptions['port'], null, $FTPOptions['user'], $FTPOptions['pass']);
                $dest = JPath::clean(str_replace(JPATH_ROOT, $FTPOptions['root'], $dest), '/');
                if (is_uploaded_file($src) && $ftp->store($src, $dest))
                {
                            $ret = true;
                        unlink($src);
                } else {
                        JError::raiseWarning(21, JText::_('WARNFS_ERR02'));
                }
        } else {
                if (is_writeable($baseDir) && move_uploaded_file($src, $dest)) { // Short circuit to prevent file permission errors
                        if (JPath::setPermissions($dest)) {
                                $ret = true;
                        } else {
                                JError::raiseWarning(21, JText::_('WARNFS_ERR01'));
                        }
                } else {
                        JError::raiseWarning(21, JText::_('WARNFS_ERR02'));
                }
        }
        return $ret;
}

如果您想使用其他组件并根据需要进行编辑,请下载: http://prakashgobhaju.com.np/index.php?option=com_showcase_gallery&view=items&catid=1&Itemid=64 记住它是一个画廊组件。

答案 2 :(得分:0)

上传任何文件,无论是Joomla网站上的图像都是如此简单,可以使用基于Web的FTP和/或像filezilla这样的桌面FTP服务来完成,但只有当你保存了你想要的文件时上传。使用基于Web的方式,您需要登录主机,例如000webhost,找到文件管理器选项,单击它并输入您的域用户名和密码。然后转到public_html文件夹,为照片或图像创建一个新文件夹,然后单击上传。找到您的图片,然后点击勾选链接开始上传。

使用桌面方式,您需要解压缩文件以添加到joomla,打开FTP客户端(如filezilla),在本地主机上找到该文件,输入主机提供的详细信息以及登录后通过filezilla进入您的帐户,找到您要添加文件的位置,然后点击上传。

您可以在这里找到类似的教程http://www.thekonsulthub.com/how-tos/how-to-upload-joomla-with-filezilla-to-your-hosting-servers-cpanel/ {whole thing}

答案 3 :(得分:0)

请请确保您使用MediaHelper中提供的过滤功能。特别是从不信任上传的图像,总是首先检查它们是有效的文件类型,然后它们是在全局配置中列出的已批准文件类型列表中,名称不包含html或javascript,以及文件本身是不包含代码。特别是我会推荐MediaHelper :: canUpload方法,它将为您检查大部分内容。如果有的话你应该更强烈地检查。还要确保您正在检查用户是否有权上传。如果有的话,你应该使检查更具限制性。使用joomla为您提供的API,例如内置媒体字段。