2015-11-20 41 views
0

我正在使用CKFinder上傳文件到我的網站,我的所有用戶都應該有自己的文件夾存儲他們自己的文件。CKFinder/CKEditor

我想要的結果是,上傳的將是ckfinder/userfiles/$ USERNAME

用戶文件的文件夾我有,根本不是爲我工作CKFinder的config.php文件的以下信息。

非常感謝和需要幫助。

$docRoot = getenv("DOCUMENT_ROOT"); 
$siteName = $_SERVER['HTTP_HOST']; 
$USERNAME = $_SESSION['thisusername']; // session via main page username value 
$baseUrl = 'http://' . $siteName . '/ckfinder/userfiles/'; 
$baseDir = $docRoot . '/ckfinder/userfiles/'; 

/*=================================== Backends =====*/ 
$config['backends'][] = array(
'name'   => 'default', 
'adapter'  => 'local', 
'baseUrl'  => "/ckfinder/userfiles/", 
'root'   => $baseDir, 
'chmodFiles' => 0777, 
'chmodFolders' => 0755, 
'filesystemEncoding' => 'UTF-8', 
); 
+3

什麼是「不工作」是什麼意思?請詳細說明。 –

回答

1

您必須在某個地方使用變量$USERNAME,否則本身不會發生任何事情。最有可能的:'baseUrl' => "/ckfinder/userfiles/" . $USERNAME ."/",

+0

不工作意味着文件上傳到root/images文件夾而不是用戶名文件夾中。當我在baseURL設置中使用$ USERNAME時,將文件上傳到/ ckfinder/userfiles/$ USERNAME/$ USERNAME/ –

+0

中發佈當前代碼 – user5542121

+0

該代碼位於原始主題發佈中。 –

0

我解決了這個由投入的config.php文件中的以下內容:

$USERNAME = $_SESSION['thisusername']; 
if ($USERNAME){ 
    $baseUrl = 'http://www.myurl.org/ckfinder/userfiles/' . $USERNAME . '/'; 
    $baseDir = $docRoot . '/ckfinder/userfiles/' . $USERNAME . '/'; 
}else{ 
    $baseUrl = 'http://www.myurl.org/images/'; 
    $baseDir = $docRoot . '/images/'; 
}