> 백엔드 개발 > PHP 튜토리얼 > [原创]让FCKeditor的File manager支持”删除” (php),该怎么处理

[原创]让FCKeditor的File manager支持”删除” (php),该怎么处理

WBOY
풀어 주다: 2016-06-13 13:41:58
원래의
1217명이 탐색했습니다.

[原创]让FCKeditor的File manager支持”删除” (php)
FCKeditor是一款很好用的所见即所得编辑器, 内置的File manager也实现了基本的文件管理功能, 唯一遗憾的是, 不支持删除…

没关系, 其实只需以下几步就可以实现删除文件和文件夹:

1, fckeditor\editor\filemanager\browser\default\frmresourceslist.html, 编辑:

PHP code
<!--

Code highlighting produced by Actipro CodeHighlighter (freeware)
http://www.CodeHighlighter.com/

-->oListManager.GetFolderRowHtml = function( folderName, folderPath, folderUrl )
{
// Build the link to view the folder.
var sLink = '<a href="#" onclick="OpenFolder(\'' + ProtectPath( folderPath ) + '\');return false;">' ;

return '<tr>' +
'<td width="16">' +
sLink +
'<img alt="" src="images/Folder.gif"    style="max-width:90%"  style="max-width:90%" border="0">' +
'</td>
<td nowrap colspan="2"> ' +
sLink +
folderName +
'' +
'</td>
<td align="right" width="45">- <a href="#" onclick="DeleteFolder(\''+folderName+'\',\''+ folderUrl.replace( /'/g, '\\\'') + '\');return false;">Delete</a>
</td>' ;
}
<br>2,  fckeditor\editor\filemanager\browser\default\frmresourceslist.html, 编辑:<br><dl class="code">PHP code<pre class="brush:php;toolbar:false">
<!--

Code highlighting produced by Actipro CodeHighlighter (freeware)
http://www.CodeHighlighter.com/

-->oListManager.GetFileRowHtml = function( fileName, fileUrl, fileSize )
{
// Build the link to view the folder.
var sLink = '<a href="#" onclick="OpenFile(\'' + ProtectPath( fileUrl ) + '\');return false;">' ;

// Get the file icon.
var sIcon = oIcons.GetIcon( fileName ) ;

return '<tr>' +
'<td width="16">' +
sLink +
'<img alt="" src="images/icons/'%20+%20sIcon%20+%20'.gif"    style="max-width:90%"  style="max-width:90%" border="0">' +
'</td>
<td> ' +
sLink +
fileName +
'' +
'</td>
<td align="right" nowrap> ' +
fileSize +
' KB' +
'</td>
<td align="right" width="45">- <a href="#" onclick="DeleteFile(\''+fileName+'\',\'' + fileUrl.replace( /'/g, '\\\'') + '\');return false;">Delete</a>
</td>' ;
}
<br>3,  fckeditor\editor\filemanager\browser\default\frmresourceslist.html, 增加:<br><dl class="code">PHP code<pre class="brush:php;toolbar:false">
<!--

Code highlighting produced by Actipro CodeHighlighter (freeware)
http://www.CodeHighlighter.com/

-->function DeleteFile( fileName, fileUrl )
{
if (confirm('Are you sure you wish to delete ' + fileName + '?')) {
oConnector.SendCommand( 'DeleteFile', "FileUrl=" + escape( fileUrl ), Refresh ) ;
}
}

function DeleteFolder( folderName, folderPath )
{
if (confirm('Are you sure you wish to delete \'' + folderName + '\' and all files in it?')) {
oConnector.SendCommand( 'DeleteFolder', "FolderName=" + escape( folderPath + folderName ), Refresh ) ;
}
}
로그인 후 복사

4, fckeditor\editor\filemanager\browser\default\frmresourceslist.html, 编辑:
PHP code
<!--

Code highlighting produced by Actipro CodeHighlighter (freeware)
http://www.CodeHighlighter.com/

-->oHtml.Append( oListManager.GetFolderRowHtml( sFolderName, sCurrentFolderPath + sFolderName + "/", sCurrentFolderUrl ) ) ;
로그인 후 복사

 

5, fckeditor\editor\filemanager\connectors\php\commands.php, 添加:
PHP code
<!--

Code highlighting produced by Actipro CodeHighlighter (freeware)
http://www.CodeHighlighter.com/

-->function DeleteFile( $resourceType, $currentFolder ) {
$file = $_SERVER['DOCUMENT_ROOT'].$_GET['FileUrl'];
if (is_file($file)) {
unlink($file);
} else {
echo '<error number="1? originaldescription=”unable to locate file">';
}
}

function DeleteFolder( $resourceType, $currentFolder ) {
$folder = $_SERVER['DOCUMENT_ROOT'].$_GET['FolderName'];
if (is_dir($folder) ) {
DELETE_RECURSIVE_DIRS($folder);
} else {
echo '<error number="2? originaldescription=" unable to locate folder>';
}
}

function DELETE_RECURSIVE_DIRS($dirname) { // recursive function to delete
// all subdirectories and contents:
if(is_dir($dirname))$dir_handle=opendir($dirname);
while($file=readdir($dir_handle)) {
if($file!="." && $file!="..") {
if(!is_dir($dirname."/".$file)) {
unlink ($dirname."/".$file);
} else {
DELETE_RECURSIVE_DIRS($dirname."/".$file);
}
}
}
closedir($dir_handle);
rmdir($dirname);
}
 <div class="clear">
                 
              
              
        
            </div></error></error>
로그인 후 복사
관련 라벨:
원천:php.cn
본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
인기 튜토리얼
더>
최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿