`

FCKEDITOR

 
阅读更多

项目需要在线HTML编辑器,就选择了FCKeditor,目前最新是2.5Bate,不过稳定点定还是选了2.4.3,而.net的控件还是2.2没变过 [smile] ,大概如何使用见我之前的“FCKeditor 2.3 在ASP.NET中文件上传路径的设置”,关于它的配置如:界面布局啊什么的网上去搜索下,太多了,就不写了 [smile] 
  FCKeditor在web.config中有多项设置:
view plaincopy to clipboardprint?
<appSettings>  
<!--FCKeditor设置(主要是以下两项)-->  
<!--FCKeditor编辑器路径-->  
<add key="FCKeditor:BasePath" value="/FCKeditor/"/>  
<!--FCKeditor用户附件上传路径-->  
<add key="FCKeditor:UserFilesPath" value="/Resources/TempUpload/"/>  
</appSettings>  
  用户登录后通过FCKeditor上传文件则要放置在用户共用上传路径“/Resources/UserUpload/”+“用户邮箱地址”,如“/Resources/UserUpload/user@gmail.com”。FCKeditor.net获取上传路径文件是:FileWorkerBase.cs,打开找到以下部分
view plaincopy to clipboardprint?
 protected string UserFilesPath  
    {  
      get  
      {  
        if ( sUserFilesPath == null )  
        {  
          // 第一回从Application["FCKeditor:UserFilesPath"] 中读取,如果没有尝试其它方式  
          sUserFilesPath = (string)Application["FCKeditor:UserFilesPath"] ;  
  
          // 第二回从Session["FCKeditor:UserFilesPath"] 中读取,如果没有尝试其它方式  
          if ( sUserFilesPath == null || sUserFilesPath.Length == 0 )  
          {  
            sUserFilesPath = (string)Session["FCKeditor:UserFilesPath"] ;  
              
            // 第三回从web.config中读取,如果没有尝试其它方式  
            if ( sUserFilesPath == null || sUserFilesPath.Length == 0 )  
            {  
              sUserFilesPath = System.Configuration.ConfigurationSettings.AppSettings["FCKeditor:UserFilesPath"] ;  
                
              // 第四回从DEFAULT_USER_FILES_PATH(这个变量在同文件中)中读取,如果没有尝试其它方式  
              if ( sUserFilesPath == null || sUserFilesPath.Length == 0 )   
                sUserFilesPath = DEFAULT_USER_FILES_PATH ;  
  
              // 第五回从网址参数ServerPath中读取  
              if ( sUserFilesPath == null || sUserFilesPath.Length == 0 )   
              {  
                sUserFilesPath = Request.QueryString["ServerPath"] ;  
              }  
  
            }  
          }  
  
          // Check that the user path ends with slash ("/")  
          if ( ! sUserFilesPath.EndsWith("/") )  
            sUserFilesPath += "/" ;  
        }  
        return sUserFilesPath ;  
      }  
    }  
  从上面的注释可以看到用户上传路径的顺序,只要在页面加载的时候设置下Session["FCKeditor:UserFilesPath"]就可以设置FCKeditor上用户上传路径了
view plaincopy to clipboardprint?
protected void Page_Load(object sender, EventArgs e)  
{  
 if (!Page.IsPostBack)  
 Session["FCKeditor:UserFilesPath"] = "用户上传路径";  
}  
  (我在配置的时候关闭了文件浏览,只提供文件快速上传)但是在使用的时候如果“Resources/UserUpload/user@gmail.com”中的user@gmail.com路径没创建,上传中FCKeditor它不会创建,也导致了文件无法上传成功,那就需要再修改FCKeditor.net项目中的Uploader.cs文件,添加一段文件夹存在的检测代码,如果不存在用户指定的文件夹侧创建一个
view plaincopy to clipboardprint?
// Get the uploaded file name.  
string sFileName = System.IO.Path.GetFileName( oFile.FileName ) ;  
  
int iCounter = 0 ;  
  
//景裔添加  
//检查上传目录是否已经被创建  
//开始==========================================  
//检查当前完整路径是否存在,不存在则开始逐级轮询检查,不存则就创建  
if (!System.IO.Directory.Exists(UserFilesDirectory))  
{  
string[] tempDirectorys = UserFilesDirectory.Split(new string[] { "\\" }, StringSplitOptions.RemoveEmptyEntries); 
string tempDirectory = string.Empty; 
for (int i = 0; i < tempDirectorys.Length; i++) 

tempDirectory += tempDirectorys[i] + "\\"; 
if (!System.IO.Directory.Exists(tempDirectory)) 
System.IO.Directory.CreateDirectory(tempDirectory); 


//结束========================================== 
 
while ( true ) 

string sFilePath = System.IO.Path.Combine( this.UserFilesDirectory, sFileName ) ; 
 
if ( System.IO.File.Exists( sFilePath ) ) 

iCounter++ ; 
sFileName =  
System.IO.Path.GetFileNameWithoutExtension( oFile.FileName ) + 
"(" + iCounter + ")" +  
System.IO.Path.GetExtension( oFile.FileName ) ;  
  
iErrorNumber = 201 ;  
}  
else  
{  
oFile.SaveAs( sFilePath ) ;  
  
sFileUrl = this.UserFilesPath + sFileName ;  
break ;  
}  
}  
  这样就基本解决了多用户分文件夹上传图片的问题,不过也有缺陷的地方,就是当用户Session超时的时候,用户再使用浏览器上传文件就不会按照指定用户文件夹上传来了,分析这个情况可以得出:这个时候用户通过编辑器上传的文件也就是对编辑器内容作出了修改,但是因为Session超时了,所以可以把做出的修改视作无效,既然修改无效,那用户上传的文件也是没用的,所在我在web.config中又设置了个默认文件上传位置,所有无效文件都会上传到这里,那个回清理的时候也方便多了 [lol] 不知道哪位大虾还有更好的办法。

分享到:
评论

相关推荐

    FCKeditor.Net_2.6.3.zip和FCKeditor-v2.6.3

    FCKeditor是一款强大的开源文本编辑器,主要用于网页内容的创建和编辑。它的名称来源于"Freeware Complete Kit for Web Editors"的首字母缩写,旨在提供一个功能丰富的HTML编辑器,让非技术人员也能轻松编辑网页内容...

    最新FCKeditor_2.6 版本 FCKeditor编辑器和控件

    兼容目前的浏览器 里面包含FCKeditor编辑器和控件 一、集成方法 FCKeditor应用在ASP.NET上,需要两组文件,一组是FCKeditor本身,另一个是用于ASP.NET的FCKeditor控件(分为1.1和2.0两个版本,这里使用2.0版本)。 ...

    fckeditor和级联菜单日历实例

    在IT行业中,富文本编辑器(FCKeditor)是一款广泛使用的在线文本编辑工具,它允许用户在网页上创建、编辑和格式化文本,类似于桌面版的Microsoft Word。FCKeditor以其丰富的功能和易于集成的特点,深受开发者喜爱。...

    fckeditor2.6.3 完整版

    2.解压缩到你的站点根文件夹中名为FCKEDITOR的文件夹中(名称必须为FCKEDITOR,因为配置文件中已经使用此名称来标示出FCKEDITOR的位置) 3.现在,编辑器就可以使用了,如果想要查看演示,可以按下面方法访问: ...

    FCKeditor 2.6.6 可直接使用

    **FCKeditor 2.6.6:一个经典且易集成的在线文本编辑器** FCKeditor是一款在Web开发中广泛使用的开源富文本编辑器,它允许用户在浏览器环境中进行类似Word的文本编辑操作。标题提到的是FCKeditor的2.6.6版本,这是...

    Fckeditor(综合利用工具)

    Fckeditor是一款基于Web的富文本编辑器,它允许用户在网页上进行文本编辑,提供类似于Microsoft Word的功能。这款编辑器支持多种操作系统和浏览器,并且具备高度的可定制性,是开发人员集成到网站中用于创建、编辑...

    FCKeditor_2.6.8.zip

    **FCKeditor 2.6.8:一个强大的在线文本编辑器** FCKeditor是一款开源的、基于Web的富文本编辑器,它允许用户在网页上进行类似Word的文本编辑操作,支持创建和编辑含有图文混合的内容。这个版本是2.6.8,是一个稳定...

    fckeditor所需jar包集合及java源文件

    FCKeditor是一款知名的开源富文本编辑器,它允许用户在网页上进行富文本内容的创建和编辑。在Java环境中使用FCKeditor时,通常需要一些特定的库文件,即jar包,以及可能的源代码来支持其功能。下面将详细阐述...

    FCKeditor

    **FCKeditor** 是一个非常流行的开源富文本编辑器,广泛应用于Web开发中,使得用户可以在网页上方便地编辑和格式化文本,包括插入图片、链接等操作。它支持多种编程语言,如JavaScript、ASP、ASP.NET、PHP、JSP等,...

    fckeditor

    **FCKeditor:一款强大的网页文本编辑器** FCKeditor是一款经典的开源JavaScript富文本编辑器,主要用于网页内容的创建和编辑。它以其跨浏览器兼容性、丰富的功能集和易用性而闻名,允许用户在网页上实现类似Word的...

    FCKeditor.Net_2.6.3 全中文版本

    FCKeditor.Net_2.6.3 是一个强大的开源文本编辑器,专为.NET平台设计。这个全中文版本是针对原版FCKeditor进行了深度定制,将所有英文界面和提示翻译成了中文,使得国内用户在使用过程中能更加方便地理解和操作。 ...

    PHP FCKeditor_2.6.6 瘦身精简版 带重命名上传+实例使用说明

    将Fckeditor 里的保留文件拷贝到网站根目录文件夹里,即/ictech/下 /fcktemplates.xml /fckstyles.xml /fckeditor_php5.php /fckeditor_php4.php /fckeditor.php /fckeditor.js /fckconfig.js /editor/ fckeditor....

    FCKEditor

    **FCKEditor**是一款历史悠久且功能强大的开源网页编辑器,它允许用户在网页上实现类似Word的文本编辑体验。FCKeditor的出现极大地提升了网站内容创作的便捷性,尤其适用于那些需要用户输入丰富格式文本的在线平台,...

    FCKeditor && fckeditor.properties

    **FCKeditor与fckeditor.properties详解** 在JSP(JavaServer Pages)开发环境中,富文本编辑器FCKeditor是一款广泛使用的开源工具,它允许开发者在网页上创建具有类似Word功能的文本编辑区域,用户可以方便地进行...

    FCKEditor(Java)完整资料包

    **FCKEditor与Java Web整合详解** FCKEditor是一款开源的富文本编辑器,它为用户提供了一种在Web页面上创建、编辑复杂HTML内容的便捷方式。FCKeditor以其直观的用户界面和丰富的功能,被广泛应用于各种Java Web应用...

    FCKeditor 插件 远程保存图片

    **FCKeditor插件远程保存图片详解** FCKeditor是一款非常流行的开源富文本编辑器,广泛应用于网站内容管理系统(CMS)和其他需要用户编辑HTML内容的场景。它提供了丰富的功能,如文本格式化、图片上传、链接创建等...

    fckeditor for jsp 的jar包

    这个是一个我修改过的fckeditor for jsp 的jar包的源代码,是fckeditor-2.3的,我修改了ConnectorServlet.java和SimpleUploaderServlet.java两个文件 我在这两个文件中都是加了一个静态变量encoding,private static...

    FCKeditor开发jar包及fckeditor文件夹

    这个压缩包“FCKeditor开发jar包及fckeditor文件夹”包含的是FCKeditor的开发相关资源,主要分为两部分:jar包和fckeditor文件夹。 1. **FCKeditor jar包**: 这个jar包通常包含了FCKeditor的Java版本,是将...

Global site tag (gtag.js) - Google Analytics