全站搜索

PHP引入kindeditor富文本编辑器

网站开发 278

运行的框架thinkphp3.2

Kindeditor版本4.1.1.1

可以在官网下载最新版本

Kindeditor 是一个功能比较全面的所见即所得富文本编辑器,比较稳定。

缺点:官网不再更新

批量上传图片需要用到flash插件,在手机端兼容不是很好

下面我们看一下怎么引入Kindeditor编辑器

1.新建一个Kindeditor.html 文件 下面是前端代码:

<style type=”text/css”>

.ke-dialog{

    top: 120px !important;

}

</style>

<textarea id=”[id]” name=”[id]” class=”form-control kindeditor” style=”height:400px;width:100%;”>[value]</textarea>


<!–编辑器Kineditor–>

<script src=”__LIB__/kindeditor/kindeditor.js”></script>

<script>

    var editor;

    KindEditor.ready(function(K) {

        editor = K.create(‘textarea[name=”[id]”]’, {

            basePath: ‘__LIB__/kindeditor/’,

            bodyClass: ‘article-content’,

            uploadJson : “{:U(‘Upload/kingeditorupload’)}”,//文件提交地址

            allowFileManager : false,

            afterBlur:function(){this.sync();},

            pasteType : 1,

            urlType:’domain’,

            filterMode:false,

            newlineTag :’p’

        });

    });

</script>

 

2. 在其他页面引入Kindeditor编辑器 include 是thinkphp3.2 中的前端引入模块的方法

    
<!– 加载编辑器的容器 –>

<include file=”Public/kindeditor” id=”detail” value=”{$model[‘detail’]}” />

 

  • 后台接受文件

 
/**


     * keditor编辑器上传图片处理


     */

    public function kingeditorupload() {

        $return = array(‘error’ => 0, ‘info’ => ‘上传成功’, ‘data’ => ”);

        session(‘upload_error’, null);

        
//上传配置

        $setting = array(

            ‘mimes’ => ”, 
//允许上传的文件MiMe类型

            ‘maxSize’ => 0, 
//上传的文件大小限制 (0-不做限制)

            ‘exts’ => ‘jpg,gif,png,jpeg,zip,rar,pdf,word,xls’, 
//允许上传的文件后缀

            ‘autoSub’ => true, 
//自动子目录保存文件

            ‘subName’ => array(‘date’, ‘Y-m-d’), 
//子目录创建方式,[0]-函数名,[1]-参数,多个参数使用数组

            ‘rootPath’ => ‘.’, 
//保存根路径这里必须为点

            ‘savePath’ => ‘/Uploads/detail/’, 
//保存路径

            ‘saveName’ => array(‘uniqid’, ”), 
//上传文件命名规则,[0]-函数名,[1]-参数,多个参数使用数组

            ‘saveExt’ => ”, 
//文件保存后缀,空则使用原后缀

            ‘replace’ => false, 
//存在同名是否覆盖

            ‘hash’ => true, 
//是否生成hash编码

            ‘callback’ => false, 
//检测文件是否存在回调函数,如果存在返回文件信息数组

        );

        
//上传文件

        $Model = D(‘Upload’, ‘Service’);

        foreach ($setting as $k => $v) {

            $Model->setconfig($k, $v);

        }

        $info = $Model->upload(‘all’);

        if ($info) {

            $url = $setting[‘rootPath’] . $info[‘imgFile’][‘savepath’] . $info[‘imgFile’][‘savename’];

            
//判断是否为图片根据传值决定是否生成缩略图

if (I(‘get.dir’) && I(‘get.thumbw’) && I(‘get.thumbh’) && in_array($info[‘imgFile’][‘ext’], array(‘jpg’, ‘gif’, ‘png’, ‘jpeg’))) {

                $url = $Model->thumb($info[‘imgFile’], I(‘get.thumbw’), I(‘get.thumbh’));

            }

            $url = str_replace(‘./’, ‘/’, $url);

            $info[‘fullpath’] =  . $url;

        }

        session(‘upload_error’, $Model->getError());

        
//返回数据

        if ($info) {

            $return[‘url’] = $info[‘fullpath’];

            unset($return[‘info’], $return[‘data’]);

        } else {

            $return[‘error’] = 1;

            $return[‘message’] = session(‘upload_error’);

        }

        
//返回JSON数据

        exit(json_encode($return));

    }

      

 

  • 上传图片查看是否能上传成功:









查看源码 图片已经上传到了程序目录,引入成功。


上一篇: 下一篇:

相关推荐

  • 网站内容如何才能够高质量 软文编辑找玢锐网络

    120

      无论是什么网站,在做网站优化的时候都需要注意网站内容的质量。网站内容质量如果过低就会影响优化效果,不过想要保住高质量的内容并不容易,需要注意细节且多方面都要努力调整才好。那么如何才能够保证网站内容的高质量呢?      网站内容的质...

    查看全文
  • 如何做一个“好”网站

    220

    众所周知,互联网从八十年代末九十年代初引进中国,出现了如瀛海威等红极一时的互联网公司。而建站行业伴随着互联网经济的生根发芽,也有30多个年头了。目前我国的实体企业都在面临着数字化转型升级,我们建站行业在这个大趋势的背景下,也要跟得上这个时代的发展。 ...

    查看全文
  • 如何设计出优秀的网站登录页?

    168

    登录页面是增强用户感知的一种方式,如果始终在主页登录,则对很多前向用户来说无法凸显出其会员制,无法加深用户对会员制的认知,基于此,更多的网站开始尝试设计出登录页。如下是一些登录页设计的技巧,可供参考。   确定单一目标在开始设计登录页之前,必须...

    查看全文
  • 网站前端通过AJAX获取数据

    186

    在一些网站中,获取后台数据的方法有很多种,其中AJAX获取数据的用户体验是最好的,因为AJAX不需要刷新页面就能直接展示数据给客户,对于客户的使用体验来说是相当舒服的。 以下是部分AJAX代码:这里通过点击触发点击事件,获取到需要的数据,然后通过AJAX把获取到...

    查看全文
展开更多