在JSP环境中配置使用fckeditor详细讲解
js 使用iframe 方法
js 使用iframe 方法如何使用JavaScript 中的iframe 方法一、什么是iframe 方法iFrame 是HTML 中的一个标签,可以用来在当前页面嵌入另一个页面。
类似于在一个页面中嵌套了另一个完整的页面,并且可以对嵌套的页面进行操作。
在JavaScript 中,我们可以使用iframe 方法来对iFrame 进行控制和操作。
二、如何在HTML 中添加iFrame在HTML 中添加iFrame 非常简单,只需要使用`<iframe>` 标签,并设置src 属性为要嵌入的页面的URL。
例如:html<iframe src="这样,就在当前页面中创建了一个iFrame,并将页面嵌入其中。
三、使用JavaScript 操控iFrame1. 获取iFrame 引用要在JavaScript 中操作一个iFrame,首先需要获取该iFrame 的引用。
我们使用`contentWindow` 属性来获取iFrame 文档对象的引用。
例如:javascriptvar iframe = document.getElementsByTagName('iframe')[0];var iframeContentWindow = iframe.contentWindow;上述代码中,我们首先获取了第一个iframe 元素,然后使用`contentWindow` 属性获取了iFrame 内的文档对象。
2. 在iFrame 中执行JavaScript获取了iFrame 的引用后,我们可以在其中执行JavaScript 代码。
使用`contentWindow` 的`eval` 方法来执行JavaScript 代码。
例如:javascriptvar iframe = document.getElementsByTagName('iframe')[0];var iframeContentWindow = iframe.contentWindow;在iFrame 中执行JavaScript 代码iframeContentWindow.eval('alert("Hello, iFrame!");');上面的代码将在iFrame 中执行JavaScript 代码,并弹出一个包含"Hello, iFrame!" 的弹窗。
js的iframe用法
js的iframe用法在JavaScript中,`<iframe>`元素是用于在一个HTML文档中嵌套另一个HTML文档的标签。
以下是一些`<iframe>`的基本用法:1.创建一个iframe元素:```html<iframe src="目标文档的URL"></iframe>```这将在当前文档中创建一个空白的`<iframe>`,其中`src`属性指定了要嵌套的目标文档的URL。
2.指定iframe的高度和宽度:```html<iframe src="目标文档的URL"width="500"height="300"></iframe>```使用`width`和`height`属性可以设置`<iframe>`的宽度和高度。
3.通过JavaScript控制iframe:```html<iframe id="myFrame"src="目标文档的URL"width="500"height="300"></iframe><script>//通过JavaScript获取iframe元素var iframe=document.getElementById("myFrame");//改变iframe的高度iframe.height="400";//改变iframe的内容iframe.src="新的目标文档的URL";</script>```您可以通过JavaScript获取`<iframe>`元素,并在运行时修改其属性,例如改变高度或更改目标文档。
javascript中的iframe基本用法
javascript中的iframe基本用法iframe是HTML中的一种元素,它可以嵌入其他网页内容到一个网页中,提供了一种简单的方式来展示其他网页的内容。
在JavaScript中,我们可以使用iframe来加载和操作iframe中的内容,从而实现一些特殊的功能和效果。
一、基本用法1.创建iframe元素:在HTML代码中,可以使用<iframe>标签来创建一个iframe元素。
例如:```html<iframesrc="other_page.html"width="500"height="300"></ifr ame>```上面的代码创建了一个宽为500像素、高为300像素的iframe元素,并指定了其内容为“other_page.html”。
2.获取iframe元素:在JavaScript中,可以使用document对象的getElementById()方法或getElementsByTagName()方法来获取iframe元素。
例如:```javascriptvariframe=document.getElementById("myIframe");```上面的代码获取了一个id为“myIframe”的iframe元素。
3.操作iframe内容:可以通过改变iframe元素的src属性来加载不同的页面,也可以通过读取iframe元素的内容来获取iframe中的数据。
例如:```javascript//加载其他页面iframe.src="other_page.html";//读取iframe中的数据variframeContent=iframe.contentWindow.document.body.inner HTML;```上面的代码分别加载了其他页面并读取了iframe中的HTML内容。
在JSP里使用CKEditor和CKFinder
在JSP里使用CKEditor和CKFinder目录1. 下载CKEditor相关的安装文件2. 安装CKEditor和CKFinder3. 在网页里使用CKEditor4. CKEditor的三种配置方式5. CKEditor的一些配置选项6. 关于CKEditor编辑器里面回车的问题7. 将CKFinder整合进CKEditor8. 配置CKFinder9. 在项目里配置CKFinder的servlet10. 更安全的使用CKFinder1. 下载CKEditor相关的安装文件∙CKEditor: 在/download页面左侧,可以下载到各种版本的CKEditor,包括完整版full、标准版standard、基础版basic等。
在页面右侧上方,还有可定制的下载,可以选择Toolbar类型、插件、语言等。
这里我们选择4.1版本的Full版本,下载后得到CKEditor_4.1_full.zip 。
∙CKEditor for java: 在/download页面右侧下部,可以下载到用于服务器端的工具,记得选择for java版本。
这里选择 3.6.4版本。
但是下载下来却是 ckeditor-java-core-3.5.3.jar。
不知道为什么。
∙CKFinder: 在/ckfinder/trial页面,可以下载到各种版本的CKFinder。
仍然选择java版。
这里我们下载的是 2.3.1版本,下载后得到CKFinder_java_2.3.1.zip。
2. 安装CKEditor和CKFinder∙解压CKEditor_4.1_full.zip,把解压得到的目录 ckeditor 完全复制到网站根目录下,也就是和WEB-INF同级。
可以给这个目录加上版本号,即ckeditor4.1。
∙把ckeditor4.1/samples 完全删掉,把ckeditor4.1/lang 里面除了en.js和zh-cn.js之外的文件删掉,把ckeditor4.1 下的README.md, CHANGES.md删掉。
js htmlescape方法
js htmlescape方法摘要:1.简介:jshtmlescape方法背景和用途2.原理:html编码和解码过程3.方法用法:JavaScript实例演示4.注意事项:应用场景和风险规避5.总结:jshtmlescape方法的重要性正文:【简介】jshtmlescape方法是一种在JavaScript中处理HTML字符串的有效手段。
在进行网页开发时,我们经常需要将用户输入或其他来源的文本转换为HTML格式,以便在网页上正确显示。
然而,直接将未经处理的文本插入到HTML中可能会导致浏览器解析错误,甚至引发安全问题。
因此,使用jshtmlescape方法对HTML字符串进行编码,然后再在JavaScript中使用,是非常必要的。
【原理】jshtmlescape方法的主要作用是对HTML特殊字符进行编码和解码。
HTML特殊字符包括但不限于:&、<、>、"、"、`、;、%,这些字符在HTML中具有特殊含义,如果直接插入到HTML文本中,浏览器会将其解释为HTML标签或属性。
通过jshtmlescape方法,我们可以将这些特殊字符转换为对应的HTML编码,使其在浏览器中正确显示。
jshtmlescape方法的原理很简单,它只是将HTML特殊字符替换为对应的HTML编码。
例如,&替换为&,<替换为<,>替换为>,以此类推。
这样,在JavaScript中处理过的HTML字符串就可以安全地插入到HTML文档中,不会引起浏览器解析错误。
【方法用法】下面是一个简单的JavaScript实例,演示如何使用jshtmlescape方法:```javascriptfunction escapeHTML(text) {return text.replace(/[&<>"`;%]/g, function (match) {switch (match) {case "&":return "&";case "<":return "<";case ">":return ">";case """:return """;case """:return """;case "`":return "`";case ";":return ";";case "%":return "%";default:return match;}});}const htmlString = "Hello, &<>"`;const escapedHTML = escapeHTML(htmlString);console.log(escapedHTML); // 输出:Hello, &<>"````【注意事项】虽然jshtmlescape方法可以解决HTML特殊字符的显示问题,但在实际应用中,我们还需要注意以下几点:1.适用场景:jshtmlescape方法主要用于处理文本内容,例如用户输入、动态生成的文本等。
FCKeditor使用方法详解
FCKeditor使用方法详解目录一、FCKeditor简介 (2)1.1 FCKeditor是什么 (2)1.2 FCKeditor的特点 (3)二、安装与配置FCKeditor (5)三、基本功能使用方法 (6)3.1 文本格式化 (7)3.2 段落和列表操作 (9)3.3 图片和表格插入 (10)3.4 表单字段 (11)3.5 样式和脚本 (12)四、高级功能使用方法 (13)4.1 可视编辑器 (14)4.2 自动排版 (16)4.3 批量导入/导出 (17)4.4 国际化支持 (18)4.5 客户端存储 (20)五、自定义插件与扩展 (21)5.1 如何安装插件 (22)5.2 插件的使用方法 (24)5.3 开发自定义插件 (25)六、常见问题与解决方案 (27)6.1 常见问题列表 (28)6.2 问题解决步骤 (29)七、实例演示 (30)7.1 创建一个简单的HTML页面 (31)7.2 在页面中添加FCKeditor (32)7.3 配置和使用FCKeditor的各种功能 (34)八、FCKeditor在主流开发框架中的应用 (35)8.1 PHP+MySQL环境下的应用 (36)8.2 环境下的应用 (37)8.3 Java/Spring环境下的应用 (39)九、总结与展望 (39)9.1 FCKeditor的优点 (40)9.2 FCKeditor的局限性与未来发展趋势 (41)一、FCKeditor简介FCKeditor是一款由德国Maxthon公司开发的强大的网页文本编辑器,它具有丰富的功能、高度的可定制性和易用性,被广泛应用于各种Web应用中,如论坛、博客、新闻发布等。
FCKeditor不仅提供了基本的文本编辑功能,还支持图像、表格、超链接等元素的插入和编辑,以及自定义插件和宏,可以满足用户的各种编辑需求。
FCKeditor采用了基于JavaScript的富文本编辑技术,具有高效的性能和较小的体积,可以轻松地集成到各种Web应用中。
FCKeditor (jsp在线编辑器)配置总结
FCKeditor (jsp在线编辑器)配置总结折腾了两天,从eWebEditor到CKeditor再到FCKeditor真是费足了劲了!本人比较喜欢开源的,在网上狂搜一通最后被CKeditor强大的功能和华丽的界面吸引的五体投地~~,高高兴兴的下载了CKeditor,花费了半天的时间终于把CKeditor配置好了,结果一点图片发现连个上传图片的按钮都没有(~~~~(>_<)~~~~ ),原来还需要一个CKfinder插件。
于是又兴冲冲的跑到官网上找CKfinder,找到最后却发现就是没有java版的!!!而且这个插件好像是要收费的,哎~真是郁闷死了。
不能用CKeditor那就用FCKeditor吧,呵呵,下面牢骚归正传:一、首先到官网下载最新版本的FCKeditor 2.6.5下载地址:/project/downloading.php?group_id=75348&filename=FCKeditor_2.6.5.zip FCKeditor.Java 2.6 要下的有fckeditor-java-demo-2.6.war (示例,我觉得下载这一个就够了)fckeditor-java-2.6-src.zip (源文件,如果你想看就下吧)fckeditor-java-2.6-bin.zip (我下了,但没有上)二、(1)、把FCKeditor 2.6.5解压到WebRoot下(2)、解压fckeditor-java-2.6-bin.zip,把文件夹中的fckeditor-java-core-2.6.jar以及lib中的所有jar包拷贝到你的web程序的lib中,fckeditor-java-demo-2.6.war中的slf4j-simple-1.5.8.jar也要拷进去(注意:slf4j-api和slf4j-simple的版本一定要一致)。
如果你觉得麻烦,那么就从fckeditor-java-demo-2.5.war 中直接将lib文件夹下的所有jar包复制到项目的lib中,我就是这么做的。
FCKeditor使用方法详解
FCKeditor使用方法技术详解作者:深蓝色QQ:76863715本文PHPChina论坛首发本文特为《PHP5和MySQL5 Web开发技术详解》一书编写1、概述FCKeditor是目前最优秀的可见即可得网页编辑器之一,它采用JavaScript编写。
具备功能强大、配置容易、跨浏览器、支持多种编程语言、开源等特点。
它非常流行,互联网上很容易找到相关技术文档,国内许多WEB项目和大型网站均采用了FCKeditor(如百度,阿里巴巴)。
本文将通过与PHP相结合,从基本安装到高级的配置循序渐进介绍给广大PHPer。
FCKeditor官方网站:/FCKeditor Wiki:/2、下载FCKeditor登录FCKeditor官方站(),点击网站右上角“Download”链接。
笔者编写本文时,FCKeditor当前最新的稳定版本是2.4.3,因此我们下载此版本的zip压缩格式文档。
如图1所示:图1:下载FCKeditor 2.4.3(最新稳定版)注意:当点击“FCKeditor_2.4.3.zip”链接后,将跳转到网站上自动下载。
如果您当前使用Linux或Unix系统,可以点击“FCKeditor_2.4.3.tar.gz”链接下载.tar.gz格式的压缩包。
3、安装FCKeditor解压“FCKeditor_2.4.3.zip”文档到您的网站目录下,我们先假定您存放FCKeditor和调用脚本存于同一个目录下。
目录结构如下图所示:图2:网站目录结构图fckeditor目录包含FCKeditor2.4.3程序文件。
check.php用于处理表单数据。
add_article.php 和add_article_js.html分别是PHP调用FCKeditor和JavaScript调用FCKeditor实例脚本文件。
3.1、用PHP调用FCKeditor调用FCKeditor必须先载入FCKeditor类文件。
解析文件上传漏洞从FCKEditor文件上传漏洞谈起
解析⽂件上传漏洞从FCKEditor⽂件上传漏洞谈起⽂件上传漏洞就是允许⽤户上传任意⽂件可能会让攻击者注⼊危险内容或恶意代码,并在服务器上运⾏,下⾯⼩编就为⼤家具体的讲解⽂件上传漏洞的知识,希望可以帮助到⼤家。
⽂件上传后导致的常见安全问题⼀般有:1)上传⽂件是Web脚本语⾔,服务器的Web容器解释并执⾏了⽤户上传的脚本,导致代码执⾏。
2)上传⽂件是Flash的策略⽂件crossdomain.xml,⿊客⽤以控制Flash在该域下的⾏为(其他通过类似⽅式控制策略⽂件的情况类似);3)上传⽂件是病毒、⽊马⽂件,⿊客⽤以诱骗⽤户或者管理员下载执⾏。
4)上传⽂件是钓鱼图⽚或为包含了脚本的图⽚,在某些版本的浏览器中会被作为脚本执⾏,被⽤于钓鱼和欺诈。
除此之外,还有⼀些不常见的利⽤⽅法,⽐如将上传⽂件作为⼀个⼊⼝,溢出服务器的后台处理程序,如图⽚解析模块;或者上传⼀个合法的⽂本⽂件,其内容包含了PHP脚本,再通过"本地⽂件包含漏洞(Local File Include)"执⾏此脚本;等等。
要完成这个攻击,要满⾜以下⼏个条件:⾸先,上传的⽂件能够被Web容器解释执⾏。
所以⽂件上传后所在的⽬录要是Web容器所覆盖到的路径。
其次,⽤户能够从Web上访问这个⽂件。
如果⽂件上传了,但⽤户⽆法通过Web访问,或者⽆法得到Web容器解释这个脚本,那么也不能称之为漏洞。
最后,⽤户上传的⽂件若被安全检查、格式化、图⽚压缩等功能改变了内容,则也可能导致攻击不成功。
⼀、从FCKEditor⽂件上传漏洞谈起FCKEditor是⼀款⾮常流⾏的富⽂本编辑器,为了⽅便⽤户,它带有⼀个⽂件上传功能,但是这个功能却出过多次漏洞。
FCKEditor针对ASP/PHP/JSP等环境都有对应的版本,以PHP为例,其⽂件上传功能在:配合解析漏洞。
(⼀)IIS5.x-6.x解析漏洞使⽤iis5.x-6.x版本的服务器,⼤多为windows server 2003,⽹站⽐较古⽼,开发语句⼀般为asp;该解析漏洞也只能解析asp⽂件,⽽不能解析aspx⽂件。
FCKEditor控件的配置使用
网站项目:Fckeditor使用Step-By-Step最近项目中要用到在线编辑器,网搜下下,一箩筐,众说纷纭,介绍下Fckeditor使用手记。
一.下载FCKeditor V2.*.*.官网地址:/project/showfiles.php?group_id=75348FCKeditor2.*.*.zip :Click Here.zip :Click HereFckeditorV2.*.*解压后里面文件很多,只需保留几个重要的文件,具体如下(二)。
解压后里面Bin文件夹下,有Debug和Release两个文件夹,用哪个文件夹里面的FredCK.FCKeditorV2.dll都行。
(下载不同的版本,Fckeditor文件夹里面有的有这两个文件夹,有的只有一个,关键的是要将Fckeditor和FredCK.FCKeditorV2.dll的版本号控制好,不然以后会报“未能加载未能加载类型FredCK.FCKeditorV2.Uploader”或“未能加载类型FredCK.FCKeditorV2.FileBrowser.Connector”或“未能加载类型FredCK.FCKeditorV2.Config”,当然要是遇到这种情况,只需要点击下面的错误提示,跳转到相应页面,改page指令里面的:将FredCK.FCKeditorV2.Connector改为FredCK.FCKeditorV2.FileBrowser.Connector )二. 精简文件:1.进入FCKeditor文件夹,把所有“_”开头的文件和文件夹删掉,这些都是一些范例,只保留editor文件夹、fckconfig.js、fckeditor.js、fckstyles.xml、fcktemplates.xml就可以了;2.进入editor文件夹,删掉“_source”文件夹,里面放的同样是源文件;ng里面放的是语言包,如果只是用简体中文,那么只保留zh-cn.js就行,建议也保留en.js(英文)、zh.js(繁体中文)两个文件三.修改配置:1.注入FredCK.FCKeditorV2.dll:一般网上介绍的是将Bin文件夹下的FredCK.FCKeditorV2.dll作为第三方控件,导入工具箱中,其实也没那个必要,只需将它添加引用到网站的Bin里面就行了。
PHP中使用FCKeditor编辑器
PHP中使用FCKeditor编辑器1、概述FCKeditor 是目前最优秀的可见即可得网页编辑器之一,它采用JavaScript编写。
具备功能强大、配置容易、跨浏览器、支持多种编程语言、开源等特点。
它非常流行,互联网上很容易找到相关技术文档,国内许多WEB项目和大型网站均采用了FCKeditor(如百度,阿里巴巴)。
本文将通过与 PHP相结合,从基本安装到高级的配置循序渐进介绍给广大PHPer。
FCKeditor官方网站:/FCKeditor Wiki:/2、下载FCKeditor登录FCKeditor官方站(),点击网站右上角“Download”链接。
注意:当点击“FCKeditor_2.4.3.zip”链接后,将跳转到网站上自动下载。
如果您当前使用Linux或Unix系统,可以点击“FCKeditor_2.4.3.tar.gz”链接下载.tar.gz格式的压缩包。
3、安装FCKeditor解压“FCKeditor_2.4.3.zip”文档到您的网站目录下,我们先假定您存放FCKeditor和调用脚本存于同一个目录下。
fckeditor 目录包含FCKeditor2.4.3程序文件。
check.php用于处理表单数据。
add_article.php和 add_article_js.html分别是PHP调用FCKeditor和JavaScript调用FCKeditor实例脚本文件。
3.1、用PHP调用FCKeditor调用FCKeditor必须先载入FCKeditor类文件。
具体代码如下。
PHP代码:<?phpinclude("fckeditor/fckeditor.php") ; // 用于载入FCKeditor类文件?>接下来,我们需要创建FCKeditor实例、指定FCKeditor存放路径和创建(显示)编辑器等。
具体代码如下所示(代码一般放在表单内)。
PHP代码:<?php$oFCKeditor = new FCKeditor('FCKeditor1') ; // 创建FCKeditor实例$oFCKeditor->BasePath = './fckeditor/'; // 设置FCKeditor目录地址$FCKeditor->Width='100%'; //设置显示宽度$FCKeditor->Height='300px'; //设置显示高度的高度$oFCKeditor->Create() ; // 创建编辑器?>下面是笔者创建好的实例代码,您可将代码保存为add_article.php通过浏览里打开http://127.0.0.1/add_article.php 查看FCKeditor安装效果。
FCK的使用
呵呵,相信FCK大家都不陌生,但是对于新手来说可能比较陌生了!下面就让偶带领新人,畅游FCK!下边介绍一下FCKeditor2.6.3在PHP程序中的安装配置方法,首先到FCKeditor官方网站上下载FCKeditor的最新版本FCKeditor2.6.3多国语言版下载完成了之后解压到网站的根目录就算是安装了吧:一、使用实例首先就是观看_samples里的例子,查找自己最想要的样式!然后直接复制文件到到自己想要的位置重命名即可:下面以fckeditor/_samples/phpsample01.php为例1、将修改成正确的路径include("../../fckeditor.php") ;我的是include("./fckeditor/fckeditor.php");2、把$oFCKeditor->BasePath = $sBasePath ;改为$oFCKeditor->BasePath ='/fckeditor/' ;fckeditor为你FCKeditor所在位置然后删除或者注视$sBasePath = $_SERVER['PHP_SELF'] ;$sBasePath = substr( $sBasePath, 0, strpos( $sBasePath, "_samples" ) ) ; 其实这时候你的编辑器已经可以浏览了!3、拷贝压缩包里的fckeditor/_samples/sampleposteddata.php$postedValue就是编辑器了值,直接付给变量,插入数据即可二、启用中文语言包;用Editplus打开FCKeditor目录下的fckconfig.js,修改第62行FCKConfig.DefaultLanguage = ‘en’ ;将en改为zh-cn,即FCKConfig.DefaultLanguage = ‘zh-cn’ ;启用中文包;注:在FCKeditor2.6.3中,默认的支持的语言即为PHP,所以不用修改第276,277行。
jspinclude用法
jspinclude用法1.静态包含静态包含是指在JSP编译时将被包含的文件的内容直接嵌入到当前JSP文件中。
静态包含的语法如下:其中,filename是要被包含的文件名,可以是相对路径或绝对路径。
静态包含的特点是包含的文件内容会在JSP文件编译时被插入到当前文件中,因此在运行时只剩下一个JSP文件。
这种方式适合用于在多个JSP页面中共享相同的代码块或页面布局,可以提高代码的复用性和可维护性。
2.动态包含动态包含是指在JSP运行时动态地决定要被包含的文件。
动态包含的语法如下:<jsp:include page="filename" [flush="true,false"] [errorPage="url"] [isErrorPage="true,false"] />其中,filename是要被包含的文件名,可以是相对路径或绝对路径。
flush属性表示是否在包含之前刷新缓冲区,默认值为false。
errorPage属性是一个可选属性,用于指定该包含的JSP文件是一个错误页面。
isErrorPage属性表示包含的JSP文件是否是一个错误页面,如果为true,则可以使用内置对象exception和error_page来处理异常。
动态包含和静态包含的最大区别在于,动态包含是在运行时进行的,因此可以根据业务逻辑决定是否包含一些文件。
动态包含的文件可以由用户输入、数据库查询结果或者其他变量来决定。
使用include指令的一般步骤如下:1. 创建两个JSP文件,一个叫做"main.jsp",另一个叫做"included.jsp"。
2. 在included.jsp文件中填入以下内容:<!DOCTYPE html><html><head><title>included.jsp</title></head><body><p>This is the included page.</p></body></html>3. 在main.jsp文件中填入以下内容:<!DOCTYPE html><html><head><title>main.jsp</title></head><body><p>This is the main page.</p></body></html>4. 运行main.jsp文件,你会看到main.jsp页面中的内容被显示出来,然后是included.jsp页面中的内容。
百度UEditor使用详解
百度UEditor使用详解(作者:老卢)相关视频教程下载:当我们还在使用FCKeditor时候,百度已经悄悄开发出了一套比它更强大的文本编辑器ueditor,专为中国人打造,请看--------:web文本编辑器被广泛的使用在论坛,留言系统,微博等网站,凡是用户能发布文字的网站,几乎到会使用到文本编辑器,老卢今天给大家介绍一款中国人自己开放的开源文本编辑器,全球最大中文搜索引擎--百度推出的UEditor。
Ueditor 是由百度web前端研发部开发的所见即所得富文本web编辑器,具有轻量,可定制,注重用户体验等特点,开源基于BSD协议,允许自由使用和使用代码.详细可参见网站:/index.html。
最新版1.1.7,可以在JSP,PHP,ASP等网站使用。
好,现在跟老卢来看看如何使用:以JSP网站为例1下载ueditor访问这个网址:/index.html,找到下载然后下载ueditor1.1.7.zip或者其他的版本2 解压后我们会看到6个文件夹和3个js文件以及一个更新日志文本其中:官网上下载完整源码包,解压到任意目录,解压后的源码目录结构如下所示:_examples:编辑器完整版的示例页面_demos:编辑器的各种使用案例dialogs:弹出对话框对应的资源和JS文件themes:样式图片和样式文件server:涉及到服务器端操作的PHP、JSP等文件third-party:第三方插件editor_all.js:_src目录下所有文件的打包文件editor_all_min.js:editor_all.js文件的压缩版,建议在正式部署时才采用editor_config.js:编辑器的配置文件,建议和编辑器实例化页面置于同一目录3 在你的web工程或网站根目录下,新建一个名称叫ueditor文件夹。
复制所有这些文件夹和js到这个文件夹到此准备工作完成4 在JSP页面包含所需要的JS和css<script type="text/javascript" charset="utf-8"src="ueditor/editor_config.js"></script><script type="text/javascript" charset="utf-8"src="ueditor/editor_all_min.js"></script><link rel="stylesheet" type="text/css"href="ueditor/themes/default/ueditor.css" />在此注意:引用的js或css必须正确,否则显示不出来我的ueditor文件夹和JSP文件同在根目录,所以写成以上。
FCKEDITOR漏洞利用总结漏洞预警 电脑资料
FCKeditor漏洞利用总结漏洞预警电脑资料Fckeditor漏洞利用查看器版本FCKeditor/whatsnew.html —————————————————————————————————————————————————————————————2. Version 2.2 版本Apache+linux 环境下在上传文件后面加个.突破!测试通过,—————————————————————————————————————————————————————————————3.Version <=2.4.2 For php 在处理PHP 上传的地方并未对Media 类型进行上传文件类型的控制,导致用户上传任意文件!将以下保存为html文件,修改action地址。
action=".site./FCKeditor/editor/filemanager/upload/php/upload .php?Type=Media" method="post">Upload a new file: —————————————————————————————————————————————————————————————4.FCKeditor 文件上传“.”变“”下划线的绕过方法很多时候上传的文件例如:shell.php.rar 或shell.php;.jpg 会变为shellphp;.jpg 这是新版FCK 的变化。
4.1:提交shell.php+空格绕过不过空格只支持win 系统 *nix 是不支持的[shell.php 和shell.php+空格是2 个不同的文件未测试。
4.2:继续上传同名文件可变为shell.php;(1).jpg 也可以新建一个文件夹,只检测了第一级的目录,如果跳到二级目录就不受限制。
—————————————————————————————————————————————————————————————5. 突破建立文件夹FCKeditor/editor/filemanager/connectors/asp/connector.asp?Com mand=CreateFolder&Type=Image&CurrentFolder=%2Fshell.asp&NewFo lderName=z&uuid=1244789975684FCKeditor/editor/filemanager/browser/default/connectors/asp/c onnector.asp?Command=CreateFolder&CurrentFolder=/&Type=Image& NewFolderName=shell.asp —————————————————————————————————————————————————————————————6. FCKeditor 中test 文件的上传地址FCKeditor/editor/filemanager/browser/default/connectors/test. htmlFCKeditor/editor/filemanager/upload/test.htmlFCKeditor/editor/filemanager/connectors/test.htmlFCKeditor/editor/filemanager/connectors/uploadtest.html—————————————————————————————————————————————————————————————7.常用上传地址FCKeditor/editor/filemanager/browser/default/connectors/asp/c onnector.asp?Command=GetFoldersAndFiles&Type=Image&CurrentFol der=/FCKeditor/editor/filemanager/browser/default/browser.html?typ e=Image&connector=connectors/asp/connector.aspFCKeditor/editor/filemanager/browser/default/browser.html?Typ e=Image&Connector=.site.%2Ffckeditor%2Feditor%2Ffilemanager%2 Fconnectors%2Fphp%2Fconnector.php (ver:2.6.3 测试通过)JSP 版:FCKeditor/editor/filemanager/browser/default/browser.html?Typ e=Image&Connector=connectors/jsp/connector.jsp注意红色局部修改为FCKeditor 实际使用的脚本语言,蓝色局部可以自定义文件夹名称也可以利用../..目录遍历,紫色局部为实际网站地址,—————————————————————————————————————————————————————————————8.其他上传地址FCKeditor/samples/default.htmlFCKeditor/samples/asp/sample01.aspFCKeditor/samples/asp/sample02.aspFCKeditor/samples/asp/sample03.aspFCKeditor/samples/asp/sample04.asp一般很多站点都已删除samples 目录,可以试试。
$.cookie js的用法
$.cookie js的用法一、概述$.cookie是一款用于操作浏览器的Cookie的工具库,主要用于存储一些用户信息,以便在后续的页面加载中可以读取。
它提供了简单易用的API,可以方便地设置、读取、删除Cookie。
二、基本用法1.设置Cookie:可以使用$.cookie的set方法来设置Cookie,例如:```javascript$.cookie('username','张三');```上述代码将名为'username'的Cookie设置为'张三'。
2.读取Cookie:可以使用$.cookie的get方法来读取Cookie的值,例如:```javascriptvarusername=$.cookie('username');```上述代码将读取名为'username'的Cookie的值,并将其存储在变量username中。
3.删除Cookie:可以使用$.cookie的remove方法来删除Cookie,例如:```javascript$.cookie.remove('username');```上述代码将删除名为'username'的Cookie。
三、选项设置$.cookie提供了丰富的选项设置,可以自定义Cookie的名称、值、过期时间、路径、域等属性。
例如:```javascript$.cookie('username','张三',{expires:7,path:'/'});```上述代码将名为'username'的Cookie设置为'张三',过期时间为7天,路径为当前目录下的所有子目录。
四、跨域设置$.cookie支持跨域设置Cookie,但是需要注意安全问题。
在设置跨域Cookie时,需要确保服务器允许跨域访问Cookie,并且在客户端和服务器之间建立安全的通信通道,以防止XSS攻击等安全问题。
struts2jsp页面使用s:if标签
struts2jsp页⾯使⽤s:if标签在jsp页⾯使⽤s:if来判断和使⽤s:date来格式化时间显⽰⽅式1 <s:if test="jobChangeList.size()>0">2 <s:iterator value="j obChangeList">3 <tr>4 <td>5 <s:if test="employeetype==0">正式员⼯ </s:if>6 <s:elseif test="employeetype==1">外包 </s:elseif>7 <s:elseif test="employeetype= =2">实习⽣</s:elseif>8 <s:else></s:else>9 </td>10 <td> 11 <s:if test="dimission==1 ">在职 </s:if>12 <s:elseif test="dimission==2">离职 </s:elseif>13 </td>14 </tr>15 </s:iterator>字符<s:iterator value="adboardDOList"> 页⾯直接遍历action提供的数据 <td class="align-center"> <s:if test='stat us == "P"'> <span class="c-ok">审核通过</span> </s:if> <s:elseif test='status == "W" '> 待审核 </s:elseif> <s:elseif test='status=="R"'> <span class="c-warn ">审核拒绝</span> <span class="icon icon-warning" title="<s:property value='comments'/>"></span> </s:elseif> </td>注意这⾥如果status类型是字符串类型在if中外层⽤的是单引号⾥⾯⽤双引号串类型1 <s:set name="age" value="61"/> 页⾯通过set赋值同时在页⾯上判断2 <s:if test="${age > 60}">3 ⽼年⼈4 </s:if>5 <s:elseif test="${age > 35}">6 中年⼈7 </s:elseif>8 <s:elseif test="${age > 15}" id="wawa">9 青年⼈10 </s:elseif>11 <s:else>12 少年13 </s:else>14 2 从后台数据库中取出值通过对对象传到页⾯ 15 <s:i f test="psInfoDO.employeetype==0">正式员⼯ </s:if>16 <s:elseif test="psInfoDO.employeetype==1">外包 </s :elseif>17 <s:elseif test="psInfoDO.employeetype==2">实习⽣</s:elseif>18 319 <s:set name="name" value="< %="'"+ request.getParameter("name")+"'" %>"/>20 <%21 System.out.println(request.getParameter("name"));22 %>23 <s:if test="#name=='zhaosoft'">24 zhaosoft here25 </s:if>26 <s:elseif test="#name=='zxl'">27 zxl her e28 </s:elseif>29 <s:else>30 other is here 31 </s:else>。
FCKeditor_2.6.3使用说明
FCK在MVC和中的配置和使用收藏FCK在MVC和中的配置和使用一:FCK配置1. 下载FCKeditor_2.6.3.zip(核心文件)_2.6.3.zip(。
Net Control)(下载地址:FCKeditor 的压缩包/sourceforge/fckeditor/FCKeditor_2.4.3.zipFCKeditor 的.net 2.0核心库/sourceforge/fckeditor/_2.2.zip)(或者直接到我的资源/source/1859109中去下载,里面有使用的例子,结合下面内容一看就会)2. 部署到.NET网站中FCKeditor_2.6.3.zip解压后将fck根目录改名为fckeditor,放到网站根目录下。
网站根目录下创建一个文件夹uploadfiles,用于存放上传的文件在网站中引用_2.6.3.zip中的“FredCK.FCKeditorV2.dll”(注意:在IIS6.0下,上传图片的时候,会出现JS没有权限的错误,解决方法是,更改FredCK.FCKeditorV2.dll的源码,找到FileBrowser/FileWorkerBase.cs 文件代码124 行Response.Write( @"(function(){var d=document.domain;while (true){try{var A=window.top.opener.document.domain;break;}catch(e) {};d=d.replace(/.*?(?:\.|$)/,'');if (d.length==0) break;try{document.domain=d;}catch (e){break;}}})();" );把try 中的document.domain=d; 删除即可.然后重新生成FredCK.FCKeditorV2.dll即可)3. 简化fck配置删除所有以_开始的文件和文件夹,在filemanager中的connector中除aspx以外的文件夹4. 修改fck的语言fckeditor中的fckconfig.js61~63行FCKConfig.AutoDetectLanguage = false ;FCKConfig.DefaultLanguage = 'zh-cn' ;FCKConfig.ContentLangDirection = 'ltr' ;5. 修改上传和浏览文件的程序语言类型fckeditor中的fckconfig.js276~277行var _FileBrowserLanguage = 'aspx' ; // asp | aspx | cfm | lasso | perl | php | pyvar _QuickUploadLanguage = 'aspx' ; // asp | aspx | cfm | lasso | perl | php | py6. 上传权限设置fckeditor2.6.3默认已经在fckconfig.js中允许被授权的连接上传和浏览文件了,但是默认情况下有将所有的连接都设为了未授权状态。
关于jsp使用兼容版kindeditor编辑器的方法
jsp关于使用兼容版kindeditor编辑器的方法备注:js能取值,修改能改值1、增加页面调用add.jsp《如图》代码在下<%@page contentType="text/html; charset=GBK"errorPage="../error.jsp"%><%@page import ="zr.zrpower.ewebeditor.fileService.FileManageService"%><%@page import = "zr.zrpower.entity.sys.SessionUser"%><%@page import = "zr.zrpower.ejb.sys.UIService"%><%@page import = "java.util.*"%><%@page import = "java.text.*"%><%FileManageService fileManage = new FileManageService();UIService userUI =new UIService();SessionUser user = (SessionUser)session.getAttribute("userinfo"); String state=request.getParameter("state");String strRECORDID =request.getParameter("RECORDID");if (strRECORDID==null){strRECORDID="";}if (strRECORDID.length()==0){strRECORDID = fileManage.GlobalID("");//生成附件编号}%><HTML><HEAD><TITLE>文章添加</TITLE><META HTTP-EQUIV="Pragma"CONTENT="no-cache"><META http-equiv="Content-Type"content="text/html; charset=gb2312"> <LINK type="text/css"rel="stylesheet"href="../zrsysmanage/css/<%=user.getUserCSS()%>"><SCRIPT LANGUAGE="JavaScript"src="../zrsysmanage/script/Public.js"></SCRIPT><script language="JavaScript"type="">//编辑器应用开始function doCheck(){// 检测表单的有效性// 如:标题不能为空,内容不能为空,等等....if (eWebEditor1.getHTML()=="") {alert("内容不能为空!");return;}// 表单有效性检测完后,自动上传远程文件// 函数:remoteUpload(strEventUploadAfter)// 参数:strEventUploadAfter ; 上传完后,触发的函数名,如果上传完后不需动作可不填参数eWebEditor1.remoteUpload();}//有效性检察function Check(theForm){alert(theForm.content.value);if (theForm.content.value!="") {theForm.FCONTENT.value=theForm.content.value;}if (trim(theForm.TITLE1.value) == ""){alert("文章标题不能为空!");theForm.TITLE1.focus();return;}if (theForm.TITLE1.value.length>100){alert("文章标题长度不能超过100!");theForm.TITLE1.focus();return;}if (theForm.TITLE2.value.length>100){alert("文章副标题长度不能超过100!");theForm.TITLE2.focus();return;}if (theForm.FSOURCE.value.length>100){ alert("文章来源长度不能超过100!");theForm.FSOURCE.focus();return;}if (theForm.KEYWORDS.value.length>100){ alert("文章关键字长度不能超过100!");theForm.KEYWORDS.focus();return;}if (theForm.AUTHOR.value.length>100){alert("文章作者长度不能超过100!");theForm.AUTHOR.focus();return;}if (theForm.content.value=="") {alert("内容不能为空!");return;//return false;}document.form1.submit();}</script></HEAD><BODY class="BodyMain"><%String ID=fileManage.GetMaxFieldNo();Calendar cal = Calendar.getInstance();SimpleDateFormat formatter = new SimpleDateFormat("yyyy-MM-ddHH:mm:ss");String mDateTime = formatter.format(cal.getTime());%><form action="../actionfilesmanage.do"method="post"name="form1"><input type="hidden"name="FILENO"value='<%=ID%>'/><input type="hidden"name="ADDUSERNO"value='<%=user.getUserID()%>'/> <input type="hidden"name="EDITDATE"value='<%=mDateTime%>'/><input type="hidden"name="FSTATE"value='2'/><input type="hidden"name="FDEGREE"value='0'/><input type="hidden"name="REGIONALISM"value='<%=user.getUnitID()%>' /><input type="hidden"name="FILEID"value="<%=strRECORDID%>"><input type="hidden"name="SEDFLAGE"value="1"><!--HTML Head--><!--HTML Head表单头显示[显示内容,用户肤色的图片文件夹]--><%=userUI.ShowHeadHtml("公共文件管理",user.getUserImage())%><!--HTML Body Start显示表单开始部分--><%=userUI.ShowBodyStartHtml()%><DIV id="divMessage"style='position:absolute;width:100%;height:100%;overflow:auto'><br> <fieldset style="width: 98%"><legend>新建文章</legend><TABLE width="100%"align="center"border="0"><TR><TD colspan=2height=5><input class="input"type="hidden"name="Act"value="add"/></TD></TR><TR><TD class="PutdSet"width="15%">文章标题:</TD><TD><input class="text"type="text"name="TITLE1"size="80" maxlength="200"><Font class="WriteSign"> *</Font></TD></TR><TR><TD class="PutdSet"width="15%">文章副标题:</TD><TD><input class="text"type="text"name="TITLE2"size="80" maxlength="200"></TD></TR><TR><TD class="PutdSet"width="15%">文章来源:</TD><TD><input class="text"type="text"name="FSOURCE"size="80"maxlength="200"><br/></TD></TR><TR><TD class="PutdSet"width="15%">审核:</TD><TD><input class="text"type="text"name="KEYWORDS"size="80"maxlength="200"></TD></TR><TR><TD class="PutdSet"width="15%">作者:</TD><TD><input class="text"type="text"name="AUTHOR"size="80" maxlength="50"></TD></TR><TR><TD class="PutdSet"width="15%"valign="top"><div id="div1"style="display:''">文章内容:</div></TD><TD></TD></TR><TR><TD colspan=2align="center"><div id="textarea"style="display:none"><textarea id="FCONTENT"name="FCONTENT"rows="8"cols="55"> </textarea></div><div id="div2"style="display:''"><%--编辑器开始--%><link rel="stylesheet"href="../webedit/themes/default/default.css" /><link rel="stylesheet"href="../webedit/plugins/code/prettify.css" /><script charset="utf-8"src="../webedit/kindeditor.js"></script> <script charset="utf-8"src="../webedit/lang/zh_CN.js"></script> <script charset="utf-8"src="../webedit/plugins/code/prettify.js"></script><script>KindEditor.ready(function(K){window.editor= K.create('textarea[name="content"]',{cssPath :'../webedit/plugins/code/prettify.css',uploadJson :'../webedit/jsp/upload_json.jsp',fileManagerJson :'../webedit/jsp/file_manager_json.jsp',allowFileManager :true,afterBlur:function(){this.sync();}});});</script><textarea id="eWebEditor1"name="content"style="width:96%;height:350px;visibility:hidden;"></textarea><%--编辑器结束--%></div></TD></TR><tr><td height="85"colspan="2"><iframe id=att name=attsrc="../zrsysmanage/att/AttAddFrm.jsp?FLOWID=mail&DOCID=<%=strRECORDI D%>&AID=mail&TYPE=1"border=0frameborder=0width=100%height=100%></iframe></td></tr><TR><TD colspan=2height=23></TD></TR></TABLE><br></fieldset><center><br><table cellspacing="0"cellpadding="0"border='0'><tr><%=userUI.ClickButton("远程采集","JavaScript:getContent();","buttonSave.gif",user.getUserImage())%> <%=userUI.ClickButton("保存","JavaScript:Check(form1);","buttonSave.gif",user.getUserImage())%> <%=userUI.ClickButton("重填","JavaScript:document.form1.reset();","buttonReset.gif",user.getUser Image())%><%=userUI.ClickButton("返回","JavaScript:history.back();","buttonReturn.gif",user.getUserImage() )%></tr></table><br></center></DIV><!--HTML Foot显示表单尾--><%=userUI.ShowFootHtml()%></FORM></BODY></HTML><%//清空相关对象(强制让java释放资源)user = null;userUI = null;fileManage = null;%>2、编辑页面调用edit.jsp《图如下》<%@page contentType="text/html; charset=GBK"errorPage="../error.jsp"%><%@page import ="zr.zrpower.ewebeditor.fileService.FileManageService"%><%@page import = "zr.zrpower.entity.sys.SessionUser"%><%@page import = "zr.zrpower.web.model.BPIP_GFILE"%><%@page import = "zr.zrpower.ejb.sys.UIService"%><%@page import = "java.util.*"%><%@page import = "java.text.*"%><%FileManageService fileManage = new FileManageService();UIService userUI =new UIService();SessionUser user = (SessionUser)session.getAttribute("userinfo"); String ID=request.getParameter("SelectedItems");BPIP_GFILE bg=fileManage.getFile(ID);String strReturn=request.getParameter("return");String strRECORDID = bg.getFILEID();%><HTML><HEAD><TITLE></TITLE><META HTTP-EQUIV="Pragma"CONTENT="no-cache"><META http-equiv="Content-Type"content="text/html; charset=gb2312"> <LINK type="text/css"rel="stylesheet"href="../zrsysmanage/css/<%=user.getUserCSS()%>"><SCRIPT LANGUAGE="JavaScript"src="../zrsysmanage/script/Public.js"></SCRIPT><script language="JavaScript"type="">//编辑器应用开始function doCheck(){// 检测表单的有效性// 如:标题不能为空,内容不能为空,等等....if (eWebEditor1.getHTML()=="") {alert("内容不能为空!");return;}// 表单有效性检测完后,自动上传远程文件// 函数:remoteUpload(strEventUploadAfter)// 参数:strEventUploadAfter ; 上传完后,触发的函数名,如果上传完后不需动作可不填参数eWebEditor1.remoteUpload();}//有效性检察function Check(theForm){alert(theForm.content.value);if (theForm.content.value!="") {theForm.FCONTENT.value=theForm.content.value;}if (trim(theForm.TITLE1.value) == ""){alert("文章标题不能为空!");theForm.TITLE1.focus();return;}if (theForm.TITLE1.value.length>100){alert("文章标题长度不能超过100!");theForm.TITLE1.focus();return;}if (theForm.TITLE2.value.length>100){alert("文章副标题长度不能超过100!");theForm.TITLE2.focus();return;}if (theForm.FSOURCE.value.length>100){alert("文章来源长度不能超过100!");theForm.FSOURCE.focus();return;}if (theForm.KEYWORDS.value.length>100){alert("文章关键字长度不能超过100!");theForm.KEYWORDS.focus();return;}if (theForm.AUTHOR.value.length>100){alert("文章作者长度不能超过100!");theForm.AUTHOR.focus();return;}if (theForm.content.value=="") {alert("内容不能为空!");return;//return false;}document.form1.submit();}</script></HEAD><BODY class="BodyMain"><%Calendar cal = Calendar.getInstance();SimpleDateFormat formatter = new SimpleDateFormat("yyyy-MM-ddHH:mm:ss");String mDateTime = formatter.format(cal.getTime());%><form action="../actionfilesmanage.do"method="post"name="form1"><input type="hidden"name="FILENO"value='<%=ID%>'/><input type="hidden"name="EDITDATE"value='<%=bg.getEDITDATE()%>'/> <input type="hidden"name="FSTATE"value='<%=bg.getFSTATE()%>'/><input type="hidden"name="return"value='<%=strReturn%>'/><input type="hidden"name="FILEID"value="<%=strRECORDID%>"><!--HTML Head--><!--HTML Body Start显示表单开始部分--><%=userUI.ShowBodyStartHtml()%><DIV id="divMessage"style='position:absolute;width:99%;height:100%;overflow:auto'> <br> <fieldset style="width: 98%"><legend>编辑文章</legend><TABLE width="100%"align="center"border="0"><TR><TD colspan=2height=5><input class="input"type="hidden"name="Act"value="edit"/></TD></TR><TR><TD class="PutdSet"width="15%">文章标题:</TD><TD><input class="text"type="text"name="TITLE1"size="80" maxlength="200"value="<%=bg.getTITLE1()%>"><Fontclass="WriteSign"> *</Font></TD></TR><TR><TD class="PutdSet"width="15%">文章副标题:</TD><TD><input class="text"type="text"name="TITLE2"size="80" maxlength="200"value="<%=bg.getTITLE2()%>"></TD></TR><TR><TD class="PutdSet"width="15%">文章来源:</TD><TD><input class="text"type="text"name="FSOURCE"size="80"maxlength="200"value="<%=bg.getFSOURCE()%>"></TD></TR><TR><TD class="PutdSet"width="15%">审核:</TD><TD><input class="text"type="text"name="KEYWORDS"size="80"maxlength="200"value="<%=bg.getKEYWORDS()%>"></TD></TR><TR><TD class="PutdSet"width="15%">作者:</TD><TD><input class="text"type="text"name="AUTHOR"size="80" maxlength="50"value="<%=bg.getAUTHOR()%>"></TD></TR><TR><TD class="PutdSet"width="15%"valign="top"><div id="div1"style="display:''">文章内容:</div></TD><TD></TD></TR><TR><TD colspan=2align="center"><div id="textarea"style="display:none"><textarea id="FCONTENT"name="FCONTENT"rows="8"cols="55"><%=bg.getFCONTENT()%></textarea></div><div><%--编辑器开始--%><link rel="stylesheet"href="../webedit/themes/default/default.css"/><link rel="stylesheet"href="../webedit/plugins/code/prettify.css" /><script charset="utf-8"src="../webedit/kindeditor.js"></script> <script charset="utf-8"src="../webedit/lang/zh_CN.js"></script> <script charset="utf-8"src="../webedit/plugins/code/prettify.js"></script><script>KindEditor.ready(function(K){window.editor= K.create('textarea[name="content"]',{cssPath :'../webedit/plugins/code/prettify.css',uploadJson :'../webedit/jsp/upload_json.jsp',fileManagerJson :'../webedit/jsp/file_manager_json.jsp',allowFileManager :true,afterBlur:function(){this.sync();}});});</script><textarea id="eWebEditor1"name="content"style="width:96%;height:350px;visibility:hidden;"><%=bg.getFCONTENT() %></textarea><%--编辑器结束--%></div></TD></TR><tr><td height="85"colspan="2"><iframe id=att name=attsrc="../zrsysmanage/att/AttAddFrm.jsp?FLOWID=mail&DOCID=<%=strRECORDI D%>&AID=mail&TYPE=1"border=0frameborder=0width=100%height=100%></iframe></td></tr><TR><TD colspan=2height=23></TD></TR></TABLE><br></fieldset><center><br><table cellspacing="0"cellpadding="0"border='0'><tr><%=userUI.ClickButton("远程采集","JavaScript:doCheck();","buttonSave.gif",user.getUserImage())%><%=userUI.ClickButton("保存","JavaScript:Check(form1);","buttonSave.gif",user.getUserImage())%> <%=userUI.ClickButton("删除","JavaScript:deMenu();","buttonDelete.gif",user.getUserImage())%> <%=userUI.ClickButton("返回","JavaScript:history.back();","buttonReturn.gif",user.getUserImage() )%></tr></table><br></center></DIV><!--HTML Foot显示表单尾--><%=userUI.ShowFootHtml()%></FORM></BODY></HTML><%//清空相关对象(强制让java释放资源)user = null;userUI = null;fileManage = null;bg = null;%>。
jsp修改fckeditor上传图片路径_绝对路径的修改
jsp修改fckeditor上传图片路径绝对路径的修改我们这里讨论的是绝对路径的修改。
如果你需要该相对路径只需要改<param-value>UserFiles/</param-value> 里的值就可以了fckeditor对jsp支持一般般,要配置一大堆,网上都是类似的文章,就不复述了,如何修改上传文件的路径,却一直没有解决方法,找了半天,最后只有自己哼哧哼哧的改由于fckeditor默认的上传路径是自己工程环境下,/UserFiles,是在web.xml里配置的1.<init-param>2.<param-name>baseDir</param-name>3.<param-value>UserFiles/</param-value> *这里少了一个 /4.</init-param>这里没法改成绝对路径,所以只有到servlet里想办法,找到类fffinit方法里的参数获取不要管,主要是在doGet()里面String currentPath=baseDir+typeStr+currentFolderStr;String currentDirPath = getServletContext().getRealPath(currentPath);这个是原来的写法取的就是当前项目webcontent下的/UserFiles/这里改成String currentPath=baseDir+typeStr+currentFolderStr;currentPath=currentPath.replace('\\','/');String currentDirPath="你需要存放文件的绝对路径"+currentPath;如String currentDirPath="d:/dweb_box/"+currentPath; *这里多了一个/下面还要改原来的写法如下Noderoot=CreateCommonXml(document,commandStr,typeStr,currentFolderStr,req uest.getContextPath()+currentPath);这里改成Noderoot=CreateCommonXml(document,commandStr,typeStr,currentFolderStr,"你需要存放文件的tomcat应用的相对路径"+currentPath);如Noderoot=CreateCommonXml(document,commandStr,typeStr,currentFolderStr,"/d web_box/"+currentPath);* 和tomc应用的path="/dweb_box" 对应doPost()方法里currentPath和currentDirPath改法与doGet一致servlet里只需要改这么多就可以了注意哈如果你上传文件后还是看不到很可能是你的存放文件的路径没有配置成tomcat 应用如上面的例子<Context displayName="dweb_box" docBase="d:/dweb_box"path="/dweb_box"></Context>如有疑问和遗漏请留言给我。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
FCKeditor是上面的一个开源项目,主要是实现在线网页编辑器的功能,可以让web程序拥有如MS Word这样强大的编辑功能。
官方网站为,在服务器端支持、ASP、ClodFusion、PHP、Java等语言,并且支持IE 5+、Mozilla 、Netscape等主流浏览器。
首先在官方网站下载fckeditor,注意有两个包,一个是主文件,一个是jsp整合包的。
1、解压FCKeditor_2.2.zip,(FCKeditor主文件),将FCKeditor目录复制到网站根目录下,
2、解压FCKeditor-2.3.zip,(jsp,FCKeditor整合包),作用:This is the JSP Integration Pack for using FCKeditor inside a java server page without the complexity of using a Java scriptlets or the javascript api.
3、将FCKeditor-2.3/web/WEB-INF/web.xml中的两个servlet,servlet-mapping定义复制到自已项目的web.xml文件中
修改:
Connector
/editor/filemanager/browser/default/connectors/jsp/connector
SimpleUploader
/editor/filemanager/upload/simpleuploader
为:
Connector
/FCKeditor/editor/filemanager/browser/default/connectors/jsp/connector
SimpleUploader
/FCKeditor/editor/filemanager/upload/simpleuploader
4、将FCKeditor-2.3/web/WEB-INF/lib目录下文件复制到自已项目的lib文件夹中
5、在需使用FCKeditor的jsp界面中加入:
// 文件开头处加入
//要使用的地方加入
imageBrowserURL="/FCKeditor/editor/filemanager/browser/default/browser.html?
Type=Image&Connector=connectors/jsp/connector"
linkBrowserURL="/FCKeditor/editor/filemanager/browser/default/browser.html?
Connector=connectors/jsp/connector"
flashBrowserURL="/FCKeditor/editor/filemanager/browser/default/browser.html?
Type=Flash&Connector=connectors/jsp/connector"
imageUploadURL="/FCKeditor/editor/filemanager/upload/simpleuploader?Type=Image"
linkUploadURL="/FCKeditor/editor/filemanager/upload/simpleuploader?Type=File"
flashUploadURL="/FCKeditor/editor/filemanager/upload/simpleuploader?Type=Flash">
this is default content :)
启动服务器测试。
成功后,来给FCKeditor瘦瘦身.
1、将FCKeditor目录下及子目录下所有以”_”下划线开头的文件夹删除
2.FCKeditor根目录下只保留fckconfig.js, fckeditor.js, fckstyles.xml, fcktemplates.xml其余全部删除
3.将editor/filemanager/upload目录下文件及文件夹清空.
4.还可以将editor/skins目录下的皮肤文件删除,只留下default一套皮肤(如果你不需要换皮肤的话)
5.还可以将editor/lang目录下文件删除,只保留en.js, fcklanguagemanager.js, zh-cn.js, zh.js 文件(英文,简体中文,繁体中文一般应该够用了:) )
完成,现在看是不是清爽了很多?
其它问题:
在struts+spring+hibernate中使用,上传图像功能中可能会出现报:
The output format must have a ‘{/xalan}content-handler’property!
错的情况,将WEB-INF/lib目录下xalan*.jar删除试试
安全问题:
假如在前台让普通用户也能使用FCKEditor,要注意相关安全问题,在前台使用时,不要使用默认的ToolBar,要将添加图像,flash,图像域按钮去掉,在fckconfig.js中大约78行配置那些数组中的值就像当于界面上的一个功能,你可以强行把每组值试出来代表什么。
更多信息请查看IT技术专栏。