欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

ThinkPHP中FCKeditor編輯器的使用方法

 更新時(shí)間:2012年07月05日 17:11:45   作者:  
前段時(shí)間一直為TP尋找好用的在線編輯器而苦惱,經(jīng)過(guò)多次嘗試與修改后,終于成功地將編輯器集成到Thinkphp里面
而且可以用直接上傳和ajax兩種方式處理內(nèi)容。為了給一些還沒(méi)能成功地集成fckeditor的同儕們一些啟發(fā)與幫助,
茲將我的經(jīng)驗(yàn)與體會(huì)描述如下:應(yīng)用目的:將FCKeditor編輯器集成到Thinkphp中,使用戶能夠在線像編輯Word一樣處理即將發(fā)表的文字與圖像。
應(yīng)用軟件與環(huán)境:apache服務(wù)器2.0以上版本,PHP版本5.0以上,mysql5.0以上;Thinkphp版本1.5或以上,F(xiàn)ckeditor版本2.x。
應(yīng)用步驟:
1、下載FCKeditor2.x版本,將解壓后的文件夾FCKeditor復(fù)制到ThinkPHP文件夾下的Vendor目錄下,以便符合THinkPHP的第三方類庫(kù)引入規(guī)則。
2、修改參數(shù):
首先,用EditPlus等軟件打開(kāi)FCKeditor目錄下的fckeditor_php5.php文件,找到第130行。出現(xiàn)內(nèi)容如下:
復(fù)制代碼 代碼如下:

public function __construct( $instanceName )
{$this->InstanceName = $instanceName ;
$this->BasePath= ' ' ;
$this->Width = '900′;
$this->Height = '400′;
$this->ToolbarSet = 'Default' ;
$this->Value = ' ';
$this->Config = array() ;
}
public function __construct( $instanceName ){$this->InstanceName = $instanceName ;
$this->BasePath = '/bm/ThinkPHP/Vendor/FCKeditor/' ;$this->Width = '900′;$this->Height = '400′;
$this->ToolbarSet = 'Default' ;$this->Value = ”;

其中,最關(guān)鍵的就是將Basepath設(shè)置好。
里面填寫的就是fckeditor_php5.php文件相對(duì)于網(wǎng)站文檔根目錄(document root)的路徑。
其實(shí)這就是用以表征FCKeditor編輯器相對(duì)根目錄的路徑。比如服務(wù)器的文檔根目錄最下級(jí)是htdocs/或www/,
項(xiàng)目名為project,project項(xiàng)目文件夾下有Thinkphp系統(tǒng)文件包與項(xiàng)目文件包myapp。而且服務(wù)器沒(méi)有對(duì)該項(xiàng)目設(shè)置虛擬主機(jī)的話,
此時(shí)的文檔根目錄仍是www/或htdocs/,那么應(yīng)該是$this->BasePath='/project/ThinPHP/Vendor/FCKeditor/';
若是設(shè)置了虛擬主機(jī),即將project變?yōu)樘摂M的文檔根目錄,通過(guò)某一域名能夠直接訪問(wèn)網(wǎng)站項(xiàng)目的話,那么此時(shí),
$this->BasePath='/ThinPHP/Vendor/FCKeditor/';
其他的參數(shù)如寬度與高度可以填或不填,若填下的話就是編輯器的默認(rèn)高與寬。InstanceName是編輯器所在標(biāo)簽的id與name,此時(shí)不用理會(huì)。其他參數(shù)也不用理會(huì)。
其次,在FCKeditor\editor\filemanager\connectors\php\下面找到config.php文件,打開(kāi)它,找到30與34行。需要改寫的參數(shù)如下:$Config['Enabled'] = true ;
$Config['UserFilesPath'] = ' ' ;
其中,第一個(gè)參數(shù)應(yīng)該設(shè)為true.默認(rèn)是true.第二個(gè)參數(shù)填寫的是上傳文件的路徑,比如要顯示的圖片等。
我們?cè)趐roject目錄下建立一個(gè)uploads文件夾,那么$Config['UserFilesPath'] = ' /project/uploads/';
路徑規(guī)則與上一個(gè)basepath一樣。要是project是虛擬文檔根目錄的話,那么$Config['UserFilesPath'] =' /uploads/';
3、應(yīng)用程序:
比如在myapp項(xiàng)目中Lib目錄下IndexAction.class.php控制器類中的index方法中,當(dāng)訪問(wèn)該程序時(shí),輸出的模板網(wǎng)頁(yè)里有form表單,
要求用戶輸入一篇文章,那么就可以用到編輯器.代碼示例如下,只顯示與fckeditor有關(guān)的代碼,其他代碼會(huì)略。
首先是服務(wù)器程序:
復(fù)制代碼 代碼如下:

public function index()
{……//其他代碼
vendor(“FCKeditor.fckeditor”);//包含F(xiàn)CKeditor類庫(kù),TP引入第三方類庫(kù)的系統(tǒng)方法,其路徑是相對(duì)于vendor目錄來(lái)說(shuō)的。
$editor= new FCKeditor(); //實(shí)例化FCKeditor對(duì)象
$editor->Width='980′;//設(shè)置編輯器實(shí)際需要的寬度。此項(xiàng)省略的話,會(huì)使用默認(rèn)的寬度。
$editor->Height='400′;//設(shè)置編輯器實(shí)際需要的高度。此項(xiàng)省略的話,會(huì)使用默認(rèn)的高度。
$this->Value=”;//設(shè)置編輯器初始值。也可以是修改數(shù)據(jù)時(shí)的設(shè)定值??梢灾每?。
$editor->InstanceName='comment';//設(shè)置編輯器所在表單內(nèi)輸入標(biāo)簽的id與name,即<input>標(biāo)簽的id與name。此處假
//設(shè)為comment.此處不可省,也要保持唯一性。表單上傳到服務(wù)器處理程序后,即可通過(guò)$_POST['comment']來(lái)讀取。
$html=$editor->Createhtml();//創(chuàng)建在線編輯器html代碼字符串,并賦值給字符串變量$html.
$this->assign('html',$html);//將$html的值賦給模板變量$html.在模板里通過(guò){$html}可以直接引用。
…….//其他代碼,包括輸出模板。
}

其次是對(duì)應(yīng)的html模板即index 文件。只需要在需要的地方插入編輯器即可,其他代碼與一般的<form>寫法一樣。
…….<!–其他html代碼 –>
<div>
<form id=”commentform” name=”commentform” action=”">//action里填寫表單處理程序,如'__APP__/Index/check'。
指的是IndexAction類下的check()方法來(lái)處理提交的表單數(shù)據(jù)。
復(fù)制代碼 代碼如下:

<table style=”width:100%;”>
<tr>
<td style=”text-align:left;”>添加新評(píng)論:
</td>
</tr>
……//其他表單填寫項(xiàng)
<tr>
<td > {$html}</td>
</tr>
<tr>
<td><input type=”submit” value=”提交評(píng)論” >
</td>
</tr>
</table>
</form>
</div>

到這里, 已經(jīng)可以用了。在表單處理程序里像通常處理表單元素那樣就行。但是,有的時(shí)候項(xiàng)目移植后,上傳的圖片等鏈接路徑會(huì)被錯(cuò)誤編譯,
以致不能正確顯示圖片等東西。通常是雙引號(hào)解析錯(cuò)誤,我還沒(méi)有解決。要想不出錯(cuò)的話,可以采取ajax的方式處理表單數(shù)據(jù)。
不過(guò)在進(jìn)行ajax處理之前,要先用一段js代碼將編輯器中的值賦給表單中name是instacename的值的表單元素。比如,
本項(xiàng)示例中要用ajax對(duì)表單進(jìn)行處理的話,index模板文件中必須在表單處理前運(yùn)行的一段js代碼為:
…….//其他js代碼
var editor=FCKeditorAPI.GetInstance('comment');//comment是設(shè)置的instanceName值.
document.commentform.comment.value=editor.EditorDocument.body.innerHTML;//將編輯器中內(nèi)容處理后的源代碼
//賦值給commentform表單的comment 屬性元素值。
……//其他js代碼
注:個(gè)人認(rèn)為xajax比較不錯(cuò),只需要將主要精力花在后臺(tái)程序上。我也是用xajax進(jìn)行數(shù)據(jù)處理的。前臺(tái)代碼很簡(jiǎn)單。

相關(guān)文章

  • FCKeditor smarty 編輯器的應(yīng)用PHP

    FCKeditor smarty 編輯器的應(yīng)用PHP

    自己仔細(xì)研究一下很容易解決你這個(gè)問(wèn)題的。這并不是一個(gè)很困難的任務(wù)。其實(shí)這里很多都是菜鳥(niǎo)級(jí)別的
    2012-07-07
  • TinyMce 中文手冊(cè) 在線手冊(cè)與下載

    TinyMce 中文手冊(cè) 在線手冊(cè)與下載

    TinyMce 中文手冊(cè) 在線手冊(cè)與下載...
    2007-07-07
  • FCK 編輯器焦點(diǎn)問(wèn)題

    FCK 編輯器焦點(diǎn)問(wèn)題

    在使用FCK編輯器的時(shí)候,我們經(jīng)常會(huì)進(jìn)行對(duì)FCK編輯器的賦值操作,賦值的操作有兩個(gè)關(guān)鍵的地方,如果不清楚的話出了錯(cuò)還百思不得其解.
    2009-11-11
  • 頁(yè)面上存在多個(gè)FckEditor編輯器的驗(yàn)證方法

    頁(yè)面上存在多個(gè)FckEditor編輯器的驗(yàn)證方法

    FCKeditor是一個(gè)專門使用在網(wǎng)頁(yè)上屬于開(kāi)放源代碼的所見(jiàn)即所得文字編輯器。它志于輕量化,不需要太復(fù)雜的安裝步驟即可使用。它可和PHP、JavaScript、ASP、ASP.NET、ColdFusion、Java、以及ABAP等不同的編程語(yǔ)言相結(jié)合。
    2010-03-03
  • XHEditor編輯器使用文檔

    XHEditor編輯器使用文檔

    XHEditor編輯器的使用方法,需要的朋友可以參考下。
    2010-12-12
  • FCKEditor超級(jí)鏈接默認(rèn)新窗口打開(kāi)的修改方法

    FCKEditor超級(jí)鏈接默認(rèn)新窗口打開(kāi)的修改方法

    經(jīng)常在后臺(tái)編輯超鏈接的朋友,希望將頁(yè)面鏈接,默認(rèn)是新窗口打開(kāi),因?yàn)檫@樣用戶體驗(yàn)好點(diǎn),所以將FCKEditor簡(jiǎn)單的修改下。
    2010-06-06
  • 百度UEditor編輯器使用教程與使用方法(圖文)

    百度UEditor編輯器使用教程與使用方法(圖文)

    今天筆者就給大家推薦一款百度UEditor編輯器。關(guān)于這款百度UEditor編輯器官網(wǎng)上也有簡(jiǎn)單的教程,不過(guò)看著比較費(fèi)勁,今天筆者就跟大家分享一下百度UEditor編輯器使用教程與使用方法,希望對(duì)大家有所幫助
    2016-11-11
  • 寶麗通實(shí)現(xiàn)連續(xù)播放實(shí)現(xiàn)代碼

    寶麗通實(shí)現(xiàn)連續(xù)播放實(shí)現(xiàn)代碼

    最近在研究如何才能實(shí)現(xiàn)連續(xù)播放功能,之前本打算用Asp生成asx播放列表,再交給寶利通播放, 不過(guò)看似有點(diǎn)麻煩,仔細(xì)翻閱官方開(kāi)發(fā)文檔,發(fā)現(xiàn)播放器有個(gè)事件
    2008-09-09
  • autogrow 讓FCKeditor高度隨內(nèi)容增加的插件

    autogrow 讓FCKeditor高度隨內(nèi)容增加的插件

    讓FCKeditor高度隨內(nèi)容增加的插件,這個(gè)插件在默認(rèn)情況下可能運(yùn)行不正常,必須做一點(diǎn)修改才可以。
    2011-02-02
  • 快速解決百度編譯器json報(bào)錯(cuò)的問(wèn)題

    快速解決百度編譯器json報(bào)錯(cuò)的問(wèn)題

    下面小編就為大家?guī)?lái)一篇快速解決百度編譯器json報(bào)錯(cuò)的問(wèn)題。小編覺(jué)得挺不錯(cuò)的,現(xiàn)在就分享給大家,也給大家做個(gè)參考。一起跟隨小編過(guò)來(lái)看看吧
    2017-08-08

最新評(píng)論