博客列表 >Thinkphp3.2.3整合最新百度Ueditor1.4.3编辑器

Thinkphp3.2.3整合最新百度Ueditor1.4.3编辑器

Deathknight的博客
Deathknight的博客原创
2017年09月30日 14:46:22766浏览

首先访问百度Ueditor的官方地址:下载列表 


根据自己的需求下载不同的版本,这里采用的是1.4.3PHP utf8版本的。

步骤:

前端部分:

把下载下来编辑器重新命名例如 ueditor ,并放到项目的根目录(建议你在根目录新建一个文件件或者是把它放到项目的Public目录下),这个根据个人对网站目录

的要求而决定,笔者是放在 Public 目录下的

其次就是到你的View视图文件夹下的视图页面加载编辑器,做一些初始化(1.引用富文本编辑器所需要的js文件 2.初始化插件),代码如下:

[html] view plain copy

<html>  

<head>  

    <meta http-equiv="content-type" content="text/html; charset=utf-8">  

    <title>Demo</title>  

        <!-- JQuery 这里自己引用 -->  

    <js file="/Public/Ueditor/ueditor.config.js"/>  

    <js file="/Public/Ueditor/ueditor.all.min.js"/>  

    <!--建议手动加在语言,避免在ie下有时因为加载语言失败导致编辑器加载失败-->  

    <!--这里加载的语言文件会覆盖你在配置项目里添加的语言类型,比如你在配置项目里配置的是英文,这里加载的中文,那最后就是中文-->  

    <js file="/Public/Ueditor/lang/zh-cn/zh-cn.js"/>  

    <script type="text/javascript" charset="utf-8">  

    window.UEDITOR_HOME_URL = "__PUBLIC__/Ueditor/";  

    $(document).ready(function () {  

      UE.getEditor('info', {  

      initialFrameHeight: 500,  

      initialFrameWidth: 1100,  

      serverUrl: "{:U(MODULE_NAME.'/Index/save_info')}"  

    });  

  });  

      

    </script>      

</head>  

<body>  

 <textarea name="info" id="info" style="width:1024px;height:500px;"></textarea>  

</body>  

</html>  



这里UE.getEditor 中的 info 就是 textarea的id名称,其中 serverUrl 就是重写了Ueditor上传的地址,默认是调用 ueditor组件的 controller.php 去上传的。

这里前面的初始化部分已经完成了,接下来看看tp后端怎么处理编辑器的请求的。

后端部分:

这里是一个demo,所以我们就在后端的 IndexController中的aa函数中处理。这里这得注意的是,我们需要看看Ueditor 本身是怎么处理上传的,代码在Ueidtor/php/controller.php ,这里我们需要把这里面的代码拷贝到save_info函数中做一些小的处理,源文件代码如下:


[php] view plain copy

<?php  

//header('Access-Control-Allow-Origin: http://*.baidu.com'); //设置http://*.baidu.com允许跨域访问  

date_default_timezone_set("Asia/chongqing");  

error_reporting(E_ERROR);  

header("Content-Type: text/html; charset=utf-8");  

  

$CONFIG = json_decode(preg_replace("/\/\*[\s\S]+?\*\//", "", file_get_contents("config.json")), true);  

$action = $_GET['action'];  

  

switch ($action) {  

    case 'config':  

        $result =  json_encode($CONFIG);  

        break;  

  

    /* 上传图片 */  

    case 'uploadimage':  

    /* 上传涂鸦 */  

    case 'uploadscrawl':  

    /* 上传视频 */  

    case 'uploadvideo':  

    /* 上传文件 */  

    case 'uploadfile':  

        $result = include("action_upload.php");  

        break;  

  

    /* 列出图片 */  

    case 'listimage':  

        $result = include("action_list.php");  

        break;  

    /* 列出文件 */  

    case 'listfile':  

        $result = include("action_list.php");  

        break;  

  

    /* 抓取远程文件 */  

    case 'catchimage'



声明:本文内容转载自脚本之家,由网友自发贡献,版权归原作者所有,如您发现涉嫌抄袭侵权,请联系admin@php.cn 核实处理。
全部评论
文明上网理性发言,请遵守新闻评论服务协议