只能在/userfiles/文件夹下。对于多用户会员系统的网站系统,这显然是不合适的,因为是不能让所有用户都共享同一个资源文件夹的。
所以必须进行动态配置,让不同的用户把图片、Flash等资源文件上传到自己私有的文件夹下。
FCKeditor 是在 editorfilemanagerconnectorsphpconfig.php 配置文件中进行上传目录配置的,核心语句是:
$Config['UserFilesPath'] = ‘/userfiles/';
只要修改该条语句,就能达到配置上传目录的目的。
以 lightPHP 这个流行的 CMS 为例,它的多用户文件夹在 /datas/userfiles/ 文件夹下,例如 /datas/userfiles/admin 是用户 admin 的用户目录,其他用户以此类推。所以如果某个用户登录后,$Config['UserFilesPath'] 数组的值就应该等于/datas/userfiles/[用户名]。这个可以通过会话来实现。例如,$_SESSION['current_user'] 代表当前用户名,那么配置语句就是:
复制代码 代码如下:
$Config['UserFilesPath'] = ‘/datas/userfiles/' . $_SESSION['current_user'] . ‘/';
这样就实现了多用户环境下上传目录的动态配置。
具体实现时,应当注意的问题是,要用 session,必须首先执行 session_start(); 语句。还有,在某些情况下,如果 session 丢失,还需要注意 session 的路径问题。
在 lightPHP 系统中,完整的配置语句是:
复制代码 代码如下:
session_save_path(realpath('../../../../../../datas/temp'));
session_start();
$Config['UserFilesPath'] = ‘/datas/userfiles/' . $_SESSION['current_user'] . ‘/';
更多问题,请与作者本人探讨。
本文来自CSDN博客,转载请标明出处:http://blog.csdn.net/zhangking/archive/2009/06/24/4293725.aspx