線上編輯器FCKeditor 2.0試用小記_PHP

來源:互聯網
上載者:User
關鍵字 試用 線上 FCKeditor 檔案 目錄 2.0 上傳
FCKEditor

線上編輯器FCKeditor 2.0試用小記

一、簡介
  2004年11月30日推出了FCKeditor 2.0 RC1版,據其官方網站稱:這是FCKeditor 2.0版的第一個穩定版本。大家現在可以考慮正式使用它了。目前支援的後台語言有ASP、ASP.Net、PHP和ColdFusion。


  筆者在經過簡單的試用發現,線上編輯器2.0版確實比1.6版有了許多的改進。首先是FCKeditor的檔案結構更加清晰,可以更方便地將其部署在自己的系統中。另外2.0版終於支援了Firefox 1.0瀏覽器,這將為FCKeditor贏得更多的使用者。廢話不多說,讓我們趕快來學習如何安裝、配置FCKeditor 2.0吧。

二、安裝與範例

  首先到http://sourceforge.net/projects/fckeditor/ 下載FCKeditor 2.0 RC1(554K),並將其解壓縮到你的網站目錄裡面,並將檔案夾名改為FCKeditor。舉例來說,如果你的網站放在shaof這個目錄下面,則在這個目錄中建立3個子目錄:


n FCKeditor:存放從網站上下載的FCKeditor線上編輯器
n upimages:用於存放上傳的圖片
n admin:裡面存放測試頁面


網站的結構如下:

/FCKeditor //FCKeditor目錄
/UserFiles //上傳檔案目錄
/admin
test.php //提交資料頁面
testsubmit.php //顯示資料頁面


  進入到FCKeditor目錄下,開啟_samples目錄,裡面含有各種程式設計語言調用FCKeditor的範常式序頁面,其中php目錄中包含著一些使用PHP來調用FCKeditor的範例,大家可以看一下,瞭解FCKeditord的調用方法,下面是我簡寫了一個test.php程式,放在網站根目錄下的admin目錄中:

if($_POST["ADD"]){
$Content=$_POST['EditorDefault'];
echo $Content;
//變數$Content就是我們在FCKeditord裡面編輯的內容,這裡可以將其儲存到資料庫,代碼省略。
}
?>
//引入線上編輯器
include("../FCKeditor/fckeditor.php") ;
這裡我們先看一下調用FCKeditor的函數,2.0版的調用方式與1.6版變化不大,如果你以前安裝過FCKeditor 1.6,那麼只需要修改很少的代碼升級到2.0。
FCKeditor( instanceName[, width, height, toolbarSet, value] )
引用值 含義
InstanceName 執行個體化編輯器所需的唯一名稱
Width 編輯器的寬度,單位為象素或者百分比(可選擇的,預設為:100%)
Height 編輯器的高度,單位為象素或者百分比(可選擇的,預設為:200)
ToolbarSet 工具列的名稱(可選擇的,預設為:Default)
Value 編輯器的內容(HTML)初始值(可選擇的)


好啦,下面就讓我們利用這個函數來定製FCKeditor吧。

$oFCKeditor = new FCKeditor('FCKeditor1') ;
$oFCKeditor->BasePath = '../FCKeditor/' ;
$oFCKeditor->ToolbarSet = 'Default' ;
$oFCKeditor->InstanceName = 'EditorDefault' ;
$oFCKeditor->Width = '100%' ;
$oFCKeditor->Height = '400' ;
$oFCKeditor->Create() ;
?>

三、配置線上編輯器

  FCKeditor 2.0的設定檔為FCKeditor\fckconfig.js,其中幾個重要的設定項目如下:


1、工具列的設定


  預設情況下,FCKeditor會調用如下的工具列按鈕,大家可以根據自己的需要進行增減。需要注意的是,2.0版與1.6版的按鈕並不完全相同,有些按鈕以及刪除或者改名了。


//##
//## Toolbar Buttons Sets
//##
FCKConfig.ToolbarSets["Default"] = [
['Source','-','Save','NewPage','Preview'],
['Cut','Copy','Paste','PasteText','PasteWord','-','Print'],
['Undo','Redo','-','Find','Replace','-','SelectAll','RemoveFormat'],
['Bold','Italic','Underline','StrikeThrough','-','Subscript','Superscript'],
['OrderedList','UnorderedList','-','Outdent','Indent'],
['JustifyLeft','JustifyCenter','JustifyRight','JustifyFull'],
['Link','Unlink'],
['Image','Table','Rule','SpecialChar','Smiley'],
['Style','FontFormat','FontName','FontSize'],
['TextColor','BGColor'],
['About']
] ;

2、簡體中文設定

編輯edit/lang/fcklanguagemanager.js

將下面語句

FCKLanguageManager.AvailableLanguages =
{
'ar' : 'Arabic',
'bs' : 'Bosnian',
'ca' : 'Catalan',
'en' : 'English',
'es' : 'Spanish',
'et' : 'Estonian',
'fi' : 'Finnish',
'fr' : 'French',
'gr' : 'Greek',
'he' : 'Hebrew',
'hr' : 'Croatian',
'it' : 'Italian',
'ko' : 'Korean',
'lt' : 'Lithuanian',
'no' : 'Norwegian',
'pl' : 'Polish',
'sr' : 'Serbian (Cyrillic)',
'sr-latn' : 'Serbian (Latin)',
'sv' : 'Swedish'
}

添加一行 'zh-cn' : 'Chinese' 從而變成

FCKLanguageManager.AvailableLanguages =
{
'ar' : 'Arabic',
'bs' : 'Bosnian',
'ca' : 'Catalan',
'en' : 'English',
'es' : 'Spanish',
'et' : 'Estonian',
'fi' : 'Finnish',
'fr' : 'French',
'gr' : 'Greek',
'he' : 'Hebrew',
'hr' : 'Croatian',
'it' : 'Italian',
'ko' : 'Korean',
'lt' : 'Lithuanian',
'no' : 'Norwegian',
'pl' : 'Polish',
'sr' : 'Serbian (Cyrillic)',
'sr-latn' : 'Serbian (Latin)',
'sv' : 'Swedish',
'zh-cn' : 'Chinese'
}

  然後到這裡http://www.shaof.com/download/zh-cn.js下載漢化好的zh-cn.js儲存到editor/lang目錄下即可。


四、設定檔案上傳


  FCKeditor 2.0線上編輯器採用了一種名為“Connector”(連接器)的技術來實現對檔案的瀏覽以及上傳。顯示了檔案瀏覽的工作流程圖。

  可以看出,當用戶端向伺服器發出一個檔案操作請求後,Connector就會對此請求進行響應,在伺服器的檔案系統中進行執行操作,如:檔案和檔案夾的瀏覽以及建立操作。最後將結果以XML的格式回應給用戶端。具體的技術細節大家可以閱讀FCKeditor內建的說明指南。


  落實到應用,首先我們要選擇一個後台語言用來實現這個功能,這裡我們以PHP為例進行說明。


1、 修改設定檔FCKeditor\fckconfig.js中的兩段內容


//Link Browsing
FCKConfig.LinkBrowser = true ;
FCKConfig.LinkBrowserURL = FCKConfig.BasePath + "filemanager/browser/default/browser.html?Connector=connectors/php/connector.php" ;
FCKConfig.LinkBrowserWindowWidth = screen.width * 0.7 ; // 70%
FCKConfig.LinkBrowserWindowHeight = screen.height * 0.7 ; // 70%
//Image Browsing
FCKConfig.ImageBrowser = true ;
FCKConfig.ImageBrowserURL = FCKConfig.BasePath + "filemanager/browser/default/browser.html?Type=Image&Connector=connectors/php/connector.php" ;
FCKConfig.ImageBrowserWindowWidth = screen.width * 0.7 ; // 70% ;
FCKConfig.ImageBrowserWindowHeight = screen.height * 0.7 ; // 70% ;


2、 修改設定檔

FCKeditor\editor\filemanager\browser\default\connectors\php\connector.php
// Get the "UserFiles" path.
$GLOBALS["UserFilesPath"] = '/UserFiles/' ;

  UserFiles為檔案上傳的路徑,與本文開頭所給的例子相對應,大家可以自行修改。


  好啦,只需要兩步就完成了檔案上傳的配置工作,真是簡單呀。以後我們通過FCKeditor上傳的檔案都會儲存在網站的UserFiles目錄下。

五、結束


  最後大家可以把FCKeditor目錄下的_docs和_samples兩個目錄刪除以節省空間的。本文是筆者以前寫過的一篇名為《線上編輯器FCKeditor在PHP中的使用方法》(1.6版)文章的升級版本,文章如有不妥之處,還請大家指正。

另,遇到的問題

1、圖片檔案上傳路徑問題

  安裝我文章裡面的設定,上傳路徑設定為UserFiles/,但是上傳圖片檔案時,FCKeditor都自動把檔案上傳到UserFiles/image目錄下面,自做主張的建立了一個image目錄,很是不爽。原因不明。

  • 相關文章

    聯繫我們

    該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

    如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

    A Free Trial That Lets You Build Big!

    Start building with 50+ products and up to 12 months usage for Elastic Compute Service

    • Sales Support

      1 on 1 presale consultation

    • After-Sales Support

      24/7 Technical Support 6 Free Tickets per Quarter Faster Response

    • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.