首页 > 后端开发 > php教程 > ThinkPHP整合百度Ueditor,thinkphpueditor_PHP教程

ThinkPHP整合百度Ueditor,thinkphpueditor_PHP教程

WBOY
发布: 2016-07-13 10:16:51
原创
849 人浏览过

ThinkPHP整合百度Ueditor,thinkphpueditor

ThinkPHP整合百度Ueditor,基于黄永成老师的视频说明的
申明:最好大家都能写绝对路径的都写好绝对路径比如:window.UEDITOR_HOME_URL
他在教程里面已经说了的,我就不再次说了啊,就一笔带过,好了不废话!
在调用编辑器的时候首先先初始化一些值:

<span><span> 1</span> <script type="text/javascript" charset="utf-8">
<span> 2</span>     window.UEDITOR_HOME_URL = "/Public/ueditor/";  <span>//</span><span>UEDITOR_HOME_URL、config、all这三个顺序不能改变</span>
<span> 3</span>     window.onload=<span>function</span><span>(){
</span><span> 4</span>         window.UEDITOR_CONFIG.initialFrameHeight=300;<span>//</span><span>编辑器的高度</span>
<span> 5</span>         window.UEDITOR_CONFIG.imageUrl="{:U('admin/Category/checkPic')}";          <span>//</span><span>图片上传提交地址</span>
<span> 6</span>         window.UEDITOR_CONFIG.imagePath=' /Uploads/thumb/';<span>//</span><span>编辑器调用图片的地址</span>
<span> 7</span>         UE.getEditor('contents');<span>//</span><span>里面的contents是我的textarea的id值</span>
<span> 8</span>        
<span> 9</span> <span>        }
</span><span>10</span>  
<span>11</span> </script></span>
登录后复制

然后再引入2个js文件,分别是:1、ueditor.all.min.js 2、ueditor.config.js
在这里申明一下 我以上说的调用方式,顺序绝对不能乱,乱了就会出问题了,所以你就按照我的按部就班的做吧!


因为我重写了编辑器的图片提交地址,所以我还得在控制器里面写一个对图片处理的方法。
代码如下:

<span><span> 1</span> <span>//</span><span>改变Ueditor 默认图片上传路径</span>
<span> 2</span>         <span>public</span> <span>function</span><span> checkPic(){
</span><span> 3</span>             import('ORG.Net.UploadFile'<span>);
</span><span> 4</span>              <span>$upload</span> = <span>new</span> UploadFile();<span>//</span><span> 实例化上传类</span>
<span> 5</span>              <span>$upload</span>->allowExts  = <span>array</span>('jpg', 'gif', 'png', 'jpeg');<span>//</span><span> 设置附件上传类型</span>
<span> 6</span>              <span>$upload</span>->autoSub =<span>true</span><span> ;
</span><span> 7</span>              <span>$upload</span>->subType ='date'<span> ;
</span><span> 8</span>              <span>$upload</span>->dateFormat ='ym'<span> ;
</span><span> 9</span>              <span>$upload</span>->savePath =  './Uploads/thumb/';<span>//</span><span> 设置附件上传目录</span>
<span>10</span>              <span>if</span>(<span>$upload</span>-><span>upload()){
</span><span>11</span>                  <span>$info</span> =  <span>$upload</span>-><span>getUploadFileInfo();
</span><span>12</span>                  <span>echo</span> json_encode(<span>array</span><span>(
</span><span>13</span>                    'url'=><span>$info</span>[0]['savename'],
<span>14</span>                    'title'=><span>htmlspecialchars</span>(<span>$_POST</span>['pictitle'], ENT_QUOTES),
<span>15</span>                    'original'=><span>$info</span>[0]['name'],
<span>16</span>                    'state'=>'SUCCESS'
<span>17</span> <span>                 ));
</span><span>18</span>               }<span>else</span><span>{
</span><span>19</span>                  <span>echo</span> json_encode(<span>array</span><span>(
</span><span>20</span>                   'state'=><span>$upload</span>-><span>getErrorMsg()
</span><span>21</span> <span>                 ));
</span><span>22</span> <span>                     }
</span><span>23</span>  
<span>24</span>             }</span>
登录后复制

 


我首先给大家看看代码先,在继续说明,
1、引入tp官方的文件上传处理类,然后初始化一些配置,这些都不介绍了啊!
2、判断他是否上传成功了,如果上传成功了,就先获取他的上传成功的信息,然后把数组转成json,用phpjson_encode。如果上传失败就把上传失败的信息直接返回!

以上都是在黄永成老师教程里面已经说明了的!就不详细说明了,不懂的就去看视频!

在整合好了上传后,发现上传的图片路径被转义了,一直显示不出来如图:

我就在显示出数据的哪里用反转义函数,进行操作了一下{$article.content|stripslashes}这样就是把转义的字符串进行反转义,这样数据就能正常显示了
如图:

 然后在前台模版显示数据的时候不仅要反转义还要去掉html实体化,{$article.content|htmlspecialchars_decode|stripslashes}这样就能正常显示了!


还有哟个问题,百度编辑器当里面的内容增长时,他的高度也是增长的,如图:


解决方案就是在Ueditor的配置文件ueditor.config.js,里面的第428行打开注释,改成true,还有430行注释打开把他改成你初始化的的高度对应就好了。如图:


这样编辑器就不会撑高了!如图:


完结!!! 说的不好的大神勿喷~~这个只是分享交流,如果说错了 指出来就行了 谢谢~~~


补充说明:关于Ueditor在ie7下面调用不出来的bug问题解决办法,这个是前天逛官网的时候,发现一个人的这个问题的,因为我只有人见人爱的ie6,也都没有去测试,所以还是别人提醒,现在更正一下ie7的bug解决方案~感谢这位大湿啊~
如图:

thinkphp框架整合ueditor编辑器路径设置问题

在imageUp.php的上传配置里面修改:
$config = array("savePath" => "../../Public");
 

有人知道thinkphp与ueditor怎集成?现在我点击编辑器任意图标时都会报“不可以加载模块dialogs”

thinkphp是个轻量级的框架,小型项目用得多些,你要学PHP,就专心把原生的PHP开发学好,不然光学框架学不出个什么名堂来的 恩,大师我观你有旺财的
 

www.bkjia.comtruehttp://www.bkjia.com/PHPjc/896039.htmlTechArticleThinkPHP整合百度Ueditor,thinkphpueditor ThinkPHP整合百度Ueditor,基于黄永成老师的视频说明的 申明:最好大家都能写绝对路径的都写好绝对路径...
相关标签:
来源:php.cn
本站声明
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板