轉載:設定FCKeditor,讓使用者上傳檔案到自己的目錄
來源網址:http://www.swf.com.tw/?p=130

設定FCKeditor,讓使用者上傳檔案到自己的目錄
文∕趙英傑

目前的FCKeditor(註:嵌入網頁中,功能類似 Word 的文字編輯器介面)版本,並沒有提供讓使用者上傳檔案到自己的目錄的功能。不過,只要稍加修改它的程式碼,就能達到這項需求。

使用者上傳到自己的目錄

假設網站有兩個分別叫做 cubie 和 eric 的使用者要上傳影像檔。初次上傳檔案時,本文的修改程式將令 FCKeditor 在伺服器端的 uploads 路徑之下,以用戶的名稱建立新的資料夾。

首先使用Dreamweaver的「使用者驗證」伺服器行為指令,建立一個簡單的用戶登入PHP網頁(請參閱《碼上就會:Dreamweaver CS3 PHP、MySQL與AJAX》的9-2頁,「製作管理人員登入頁面」一節),如下圖所示:

使用者登入頁面

從「程式碼」檢視模式可以看到,Dreamweaver將把用戶的帳號名稱記錄在名叫 "MM_Username" 的session變數。根據本文範例檔的設定,登入成功後,瀏覽器將切換到包含 FCKeditor 編輯器的 editor.php 頁面。

接著修改位於底下兩個路徑裡的 config.php 設定檔。第一個設定檔用於設定「上傳檔案」面版裡的上傳路徑;第二個設定檔用於設定「瀏覽檔案」面版裡的上傳檔案路徑:

C:\AppServ\www\fckeditor\editor\filemanager\browser\default\connectors\php\config.php
C:\AppServ\www\fckeditor\editor\filemanager\upload\php\config.php

開啟這兩個設定檔之後,在PHP程式第一行(亦即,<?php的下一行)輸入底下的敘述,啟用session變數:

session_start();

將書本範例程式裡的固定上傳檔案路徑:

$Config['UserFilesPath'] = '/uploads/' ;  // 預設為'/userfiles/'

改成:

$Config['UserFilesPath'] = '/uploads/'. $_SESSION['MM_Username'] . '/' ;

假設登入用戶的帳號為 "cubie",那麼,該用戶的所有影像檔將自動存入底下的資料夾路徑中:

/uploads/cubie/images/

按此連結下載範例檔。本範例檔僅包含「用戶登入」頁面(testUpload.php)以及嵌入FCKeditor的簡易編輯頁面(editor.php),用戶登入頁面的資料庫連線設定沿用書本的範例檔,請直接將範例檔解壓縮放在AppServ的www根目錄,並依照上文修改config.php設定檔之後,即可進行測試。

arrow
arrow
    全站熱搜

    yoonow 發表在 痞客邦 留言(1) 人氣()