[原创]让FCKeditor的File manager支持”删除” (php)
FCKeditor是一款很好用的所见即所得编辑器, 内置的File manager也实现了基本的文件管理功能, 唯一遗憾的是, 不支持删除…
没关系, 其实只需以下几步就可以实现删除文件和文件夹:
1, fckeditoreditorilemanagerrowserdefaultrmresourceslist.html, 编辑:
<!--
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"></a>' +
'</td><td nowrap colspan="2"> ' +
sLink +
folderName +
'</a>' +
'</td><td align="right" width="45">- <a href="#" onclick="DeleteFolder(''+folderName+'',''+ folderUrl.replace( /'/g, '\'') + '');return false;">Delete</a></td></tr>' ;
}
<!--
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/' + sIcon + '.gif" style="max-width:90%" style="max-width:90%" border="0"></a>' +
'</td><td> ' +
sLink +
fileName +
'</a>' +
'</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></tr>' ;
}
<!--
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 ) ;
}
}
<!-- Code highlighting produced by Actipro CodeHighlighter (freeware) http://www.CodeHighlighter.com/ -->oHtml.Append( oListManager.GetFolderRowHtml( sFolderName, sCurrentFolderPath + sFolderName + "/", sCurrentFolderUrl ) ) ;
<!--
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怎么学习?PHP怎么入门?PHP在哪学?PHP怎么学才快?不用担心,这里为大家提供了PHP速学教程(入门到精通),有需要的小伙伴保存下载就能学习啦!
Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号