針對(duì)PHP環(huán)境下Fckeditor編輯器上傳圖片配置詳細(xì)教程
開啟Fckeditor上傳圖片功能
考慮到目錄安全性問題,默認(rèn)Fckeditor2.6.6上傳功能并未開啟,所以第一步我們必須開啟Fckeditor上傳功能,這里需要注意,由于PHP版本Fckeditor上傳功能需要用到chomod函數(shù)對(duì)新建目錄進(jìn)行權(quán)限設(shè)置,所以請(qǐng)務(wù)必確認(rèn)在啟用Fckeditor上傳功能時(shí)PHP環(huán)境的用戶具有創(chuàng)建和更改上傳目錄的權(quán)限。
如果沒有開啟Fckeditor上傳功能,在點(diǎn)擊插入/編輯圖像按鈕,選擇上傳,在選擇完要上傳的文件后點(diǎn)擊發(fā)送到服務(wù)器上按鈕時(shí)會(huì)報(bào)錯(cuò)誤信息如下
This file uploader is disabled.
Please check the "editor/filemanager/connectors/php/config.php" file
根據(jù)錯(cuò)誤信息,打開editor/filemanager/connectors/php目錄下config.php,找到
$Config['Enabled'] = false ;
更改為
$Config['Enabled'] = true ;
并在相應(yīng)目錄下建立userfiles上傳目錄后,F(xiàn)ckeditor上傳圖片功能開啟。
特別提醒:Fckeditor似乎有個(gè)BUG漏洞,即JS兼容性還不是太完美,之前我在Google Chrome游覽器下設(shè)置完后,F(xiàn)ckeditor PHP上傳一直實(shí)現(xiàn)不了,換了IE后一切正常。
Fckeditor上傳圖片時(shí)上傳路徑配置教程
作為獨(dú)立網(wǎng)站開發(fā)者,除了考慮技術(shù)還需要兼顧其他方便,比如SEO優(yōu)化,而目錄結(jié)構(gòu)(URL)優(yōu)化是SEO的一部分,這就需要在設(shè)置Fckeditor上傳圖片功能時(shí)考慮圖片上傳路徑問題。
默認(rèn)Fckeditor圖片上傳路徑結(jié)構(gòu)有兩種形式:userfiles/文件名和userfiles/文件類型/文件名,針對(duì)兩種Fckeditor上傳方式:快速上傳(圖像屬性中的上傳)和服務(wù)器游覽上傳(圖像屬性中的鏈接),比如上傳圖片,QuickUpload模式上傳路徑為userfiles/文件名,服務(wù)器游覽上傳模式上傳路徑為userfiles/images/文件名。
Fckeditor圖片上傳路徑配置如下
打開editor/filemanager/connectors/php目錄下config.php文件,找到
$Config['UserFilesPath'] = '/userfiles/' ;
更改為
$Config['UserFilesPath'] = '/項(xiàng)目目錄/userfiles/' ;
注意:此處userfiles文件夾是針對(duì)http://localhost/的根目錄而言的。
以上是默認(rèn)Fckeditor上傳路徑的配置,根據(jù)URL規(guī)劃你可以自定義Fckeditor的上傳目錄,只要修改config.php文件中的$Config['FileTypesPath']、$Config['FileTypesAbsolutePath']、$Config['QuickUploadPath']、$Config['QuickUploadAbsolutePath']四個(gè)上傳目錄路徑的值即可。這種方法一定程度上也能避免Fckeditor上傳圖片文件名重名問題。
限制Fckeditor上傳圖片大小設(shè)置
Fckeditor2.6.6默認(rèn)并沒有限制上傳圖片文件的大小,可以通過兩種方法改進(jìn),一種可以通過修改PHP.INI配置文件上傳大小來限制,另一種方法只能手動(dòng)修改Fckeditor源碼,方法如下
1、打開editor/filemanager/connectors/php目錄下config.php,創(chuàng)建Config變量設(shè)置上傳圖片大小,這里以KB為單位
$Config['MaxImageSize']= '1024';
2、打開editor/filemanager/connectors/php目錄下commands.php,找到
if ( isset( $Config['SecureImageUploads'] ) )
{
if ( ( $isImageValid = IsImageValid( $oFile['tmp_name'], $sExtension ) ) === false )
{
$sErrorNumber = '202' ;
}
//上傳圖片大小限制
}
在上傳圖片大小限制處,添加
if ( isset( $Config['MaxImageSize'] ) )
{
$iFileSize = round( $oFile['size'] / 1024 );
if($iFileSize > $Config['MaxImageSize'] )
{
$sErrorNumber = '204';
}
}
說明:由于PHP計(jì)算上傳圖片大小以字節(jié)為單位,所以代碼首先將上傳的圖片大小折算為KB,再來對(duì)比是否超出了規(guī)定的圖片大小,如超出,則報(bào)錯(cuò)。
注意最后將
if ( !$sErrorNumber && IsAllowedExt( $sExtension, $resourceType ) )
{
//Fckeditor上傳圖片功能
}
else
$sErrorNumber = '202' ;
代碼塊結(jié)尾處的else語句去除,否則實(shí)現(xiàn)不了限制Fckeditor上傳圖片文件大小的功能。
3、打開editor/dialog/fck_image/fck_image.js,添加錯(cuò)誤代碼(errorNumber)信息,找到OnUploadCompleted函數(shù),添加
case 204 :
alert( "Security error. File size error." ) ;
return ;
至此限制Fckeditor上傳圖片文件大小配置就完成了,其他類型的上傳文件大小限制也是這種思路。
Fckeditor上傳圖片文件名重名及中文亂碼解決方法
經(jīng)測(cè)試Fckeditor2.6.6并沒有解決上傳文件中文名變?yōu)閬y碼的問題,這是由于Fckeditor實(shí)現(xiàn)上傳功能時(shí)并沒有將文件重命名,容易導(dǎo)致上傳圖片文件重名及亂碼問題。
上傳圖片文件重名和亂碼解決方法如下
打開editor/filemanager/connectors/php目錄下commands.php,找到FileUpload函數(shù),在
$sExtension = substr( $sFileName, ( strrpos($sFileName, '.') + 1 ) ) ;
$sExtension = strtolower( $sExtension ) ;
后添加
$sFileName = rand(0,100).".".$sExtension;
此處rand函數(shù)可根據(jù)需要自行改變重命名規(guī)則。
另一種上傳圖片文件名亂碼解決方法為使用iconv函數(shù)對(duì)文件名進(jìn)行編碼轉(zhuǎn)換,但仍然存在重名問題,所以針對(duì)Fckeditor上傳圖片文件名最好還是重命名。
Fckeditor上傳圖片添加水印功能
對(duì)于網(wǎng)站擁有者來說保護(hù)圖片版權(quán)添加水印必不可少,我們可以利用PHP添加水印函數(shù)結(jié)合Fckeditor文件上傳函數(shù)FileUpload實(shí)現(xiàn)圖片添加水印功能,水印函數(shù)請(qǐng)參考PHP圖片水印函數(shù):支持以圖片和文字方式添加水印一文。
至此Fckeditor在PHP環(huán)境下的上傳圖片配置入門教程就介紹完了。
- PHP中CKEditor和CKFinder配置問題小結(jié)
- 探討fckeditor在Php中的配置詳解
- fckeditor編輯器在php中的配置方法
- php下安裝配置fckeditor編輯器的方法
- php下FCKeditor2.6.5網(wǎng)頁編輯器的使用方法
- php ckeditor上傳圖片文件名亂碼解決方法
- php fckeditor 調(diào)用的函數(shù)
- fckeditor在php中的用法(添加于修改寫成了函數(shù))
- 將FCKeditor導(dǎo)入PHP+SMARTY的實(shí)現(xiàn)方法
- jQuery+PHP發(fā)布的內(nèi)容進(jìn)行無刷新分頁(Fckeditor)
- php版本CKEditor 4和CKFinder安裝及配置方法圖文教程
相關(guān)文章
ueditor1.2.1修改超鏈接默認(rèn)值,ueditor編輯器新窗口打開連接
這篇文章主要介紹了ueditor1.2.1修改超鏈接默認(rèn)值,ueditor編輯器新窗口打開連接的設(shè)置方法2014-07-07
FCKEditor+jQuery+PHP實(shí)現(xiàn)分頁代碼
根據(jù)一下步驟,即可實(shí)現(xiàn)使用FCKEditor+jQuery+PHP實(shí)現(xiàn)無刷新頁面分頁。2010-07-07
FCKeditor 2.6 編碼錯(cuò)誤導(dǎo)致修改的內(nèi)容出現(xiàn)亂碼的解決方法
我修改了該文件,其中有些中文字,在 IE 中打開之,發(fā)現(xiàn)是亂碼,原來這個(gè)文件有問題。文件中指定了 charset 為 utf-82010-03-03
FCKeditor編輯器添加圖片上傳功能及圖片路徑問題解決方法
現(xiàn)在很多CMS系統(tǒng)因?yàn)榘踩驎?huì)把后臺(tái)編輯器里的上傳功能給去除,但這樣一來對(duì)實(shí)際使用過程造成了很多麻煩,今天我們以ASPCMS系統(tǒng)的FCKeditor編輯器為例,說明一下如何增加圖片上傳功能2014-04-04
頁面上存在多個(gè)FckEditor編輯器的驗(yàn)證方法
FCKeditor是一個(gè)專門使用在網(wǎng)頁上屬于開放源代碼的所見即所得文字編輯器。它志于輕量化,不需要太復(fù)雜的安裝步驟即可使用。它可和PHP、JavaScript、ASP、ASP.NET、ColdFusion、Java、以及ABAP等不同的編程語言相結(jié)合。2010-03-03
關(guān)于jsp版ueditor1.2.5的部分問題解決(上傳圖片失敗)
這篇文章主要介紹大家在使用jsp版ueditor1.2.5的碰到的一些問題解決方法,需要的朋友可以參考下2013-06-06

