程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> 網頁編程 >> PHP編程 >> 關於PHP編程 >> CKEditor圖片上傳功能開啟方法

CKEditor圖片上傳功能開啟方法

編輯:關於PHP編程

PHP怎麼給ckeditor編輯器加上傳圖片的功能?CKEditor官方演示是有上傳圖片和浏覽服務器文件功能的,但是我們自己下載回來的卻沒有這兩個功能……

其實還需要下載另外一個組件:CKFinder,用它配合CKEditor來實現上傳功能。

官方提供了PHP,Asp.Net和Asp三個語言版本的CKFinder,下載地址:http://ckfinder.com/download

將CKFinder解壓縮到網站目錄。調用方法如下(假設CKFinder在網站根目錄,可以使用相對路徑):

 

CKEDITOR.replace(  'editor1',
{
filebrowserBrowseUrl :  '/ckfinder/ckfinder.html',
filebrowserImageBrowseUrl :  '/ckfinder/ckfinder.html?Type=Images',
filebrowserFlashBrowseUrl :  '/ckfinder/ckfinder.html?Type=Flash',
filebrowserUploadUrl :  '/ckfinder/core/connector/php/connector.php?command=QuickUpload&type=Files',
filebrowserImageUploadUrl  :  '/ckfinder/core/connector/php/connector.php?command=QuickUpload&type=Images',
filebrowserFlashUploadUrl  :  '/ckfinder/core/connector/php/connector.php?command=QuickUpload&type=Flash'
});

同時默認情況下是禁止上傳的,還需要打開CKFinder目錄下的config.php,將第32行的return  false;修改為return true;

這裡就是上傳權限的認證了,你可以注意到上面有一大段英文注釋,意思是不要簡單的將它修改為return  true,而是加上例如session驗證等等,否則會很危險……

下面是官方文檔,關於如何增加文件上傳功能,給英文好的同學參考,上面說的方法其實就是下文中的Example  5:

Basic Configuration
The filebrowserBrowseUrl setting is the  location of an external file browser, that should be launched when "Browse  Server" button(1) is pressed.

The filebrowserUploadUrl setting is the  location of a script that handles file uploads. If set, the "Upload" tab(2) will  appear in dialog boxes (only where such functionality is available, i.e. in  "Link", "Image" and "Flash" dialog windows).

Example 1 
CKEDITOR.replace( 'editor1', {
filebrowserBrowseUrl :  '/browser/browse.php',
filebrowserUploadUrl : '/uploader/upload.php',
}); 
It is also possible to set a separate url for a selected dialog box, using  the dialog name in file browser settings: filebrowser[dialogName]BrowseUrl and  filebrowser[dialogName]UploadUrl.

For example to set a special upload  url for the image dialog, set the filebrowserImageUploadUrl property: 

Example 2
CKEDITOR.replace( 'editor1', {
filebrowserBrowseUrl :  '/browser/browse.php',
filebrowserImageBrowseUrl :  '/browser/browse.php?type=Images'
filebrowserUploadUrl :  '/uploader/upload.php',
filebrowserImageUploadUrl :  '/uploader/upload.php?type=Images'
});
In the example above,  filebrowserBrowseUrl and filebrowserUploadUrl settings will be used by default,  however in the Image dialog box, CKEditor will use filebrowserImageBrowseUrl and  filebrowserImageUploadUrl configuration settings instead.

File Browser  Window Size The default width of file browser window in CKEditor is set to 80%  of screen width, the default hight is set to 70% of screen height. If for some  reasons, the default values are not suitable for you, you can change it to any  other value.

Use filebrowserWindowWidth to change width and  filebrowserWindowHeight to change height of the window.

To set the size  of the window in pixels, just set the number value (e.g. "800"). If you prefer  to set height and width of the window in percentage of the screen, remember to  add percent sign at the end (e.g. "60%").

Example 3 
CKEDITOR.replace( 'editor1', {
filebrowserBrowseUrl :  '/browser/browse.php',
filebrowserUploadUrl :  '/uploader/upload.php',
filebrowserWindowWidth :  '640',
filebrowserWindowHeight : '480',
});
To set the window size of  file browser inside of a specific dialog box, use  filebrowser[dialogName]WindowWidth and filebrowser[dialogName]WindowHeight  settings.

For example, to change the file browser window size only in  "Image" dialog box, change set the filebrowserImageWindowWidth and  filebrowserImageWindowHeight settings.

Example 4
CKEDITOR.replace(  'editor1', {
filebrowserBrowseUrl :  '/browser/browse.php',
filebrowserUploadUrl :  '/uploader/upload.php',
filebrowserImageWindowWidth :  '640',
filebrowserImageWindowHeight : '480',
});

Using  CKFinder
CKFinder may be easily integrated with CKEditor (see live demo). 

The integration may be done in two ways: by setting CKEditor  configuration options (example below) or using the CKFinder.SetupCKEditor()  method available in CKFinder API.

Example 5
CKEDITOR.replace(  'editor1',
{
filebrowserBrowseUrl :  '/ckfinder/ckfinder.html',
filebrowserImageBrowseUrl :  '/ckfinder/ckfinder.html?Type=Images',
filebrowserFlashBrowseUrl :  '/ckfinder/ckfinder.html?Type=Flash',
filebrowserUploadUrl :  '/ckfinder/core/connector/php/connector.php?command=QuickUpload&type=Files',
filebrowserImageUploadUrl  :  '/ckfinder/core/connector/php/connector.php?command=QuickUpload&type=Images',
filebrowserFlashUploadUrl  :  '/ckfinder/core/connector/php/connector.php?command=QuickUpload&type=Flash'
});
The  example above is valid for PHP environment. /ckfinder/ is a base path to the  CKFinder installation directory. If your using CKFinder for ASP, ASP.NET or  ColdFusion remember to change "php" to the right extension:

asp  - CKFinder for ASP
aspx – CKFinder for ASP.NET
cfm – CKFinder for  ColdFusion
php – CKFinder for PHP

Example 6
CKEditor +  CKFinder integration with the use of CKFinder.SetupCKEditor() function: 

var editor = CKEDITOR.replace( 'editor1' );
CKFinder.SetupCKEditor(  editor, '/ckfinder/' );
The second parameter of the SetupCKEditor() method is  the path to the CKFinder installation.

Please check the  _samples/js/ckeditor.html sample distributed with CKFinder to see the full  working example of this integration method.


摘自 順子網絡

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved