代码高亮:http://www.cnblogs.com/KTblog/p/5205214.html

效果:

项目结构:

  • Extend:存放各种扩展
  • BlogAction.class.php:博文模块
  • addBlog.html:添加博文页面

Html代码:

只是用一个核心文件也可,也可以加入其他js文件,比如语言包,扩展包。

addBlog.html

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en">
<head>
<meta http-equiv="Content-Type" content="text/html;charset=UTF-8">
<title>添加博文</title>
<link rel="stylesheet" href="__PUBLIC__/Css/Public.css" />
</head>
<body>
<table class="table"> //代码省略......
     //代码省略......
     //代码省略...... <tr>
<td colspan="2" align="center">
<!-- KindEditor编辑器 Begin -->
<textarea name="content" style="width:700px;height:200px;visibility:hidden;"></textarea>
<!-- KindEditor编辑器 End -->
</td>
</tr>
<tr>
<td colspan="2" align="center">
<!-- <input type="text" value="保存提交" /> -->
<a href="" id="submit">提交</a>
</td>
</tr>
</table> <!-- JQuery CDN Begin -->
<script src="//cdn.bootcss.com/jquery/2.2.0/jquery.min.js"></script>
<!-- JQuery End -->
<!-- KindEditor编辑器JS Begin -->
<script charset="utf-8" src="__EXTEND__/KindEditor/kindeditor.js"></script>
<!-- KindEditor编辑器JS End -->
<!-- 调用js Begin -->
<script>
$(function () {
//初始化编辑器
var ed = null;
KindEditor.ready(function(K) {
         //上传操作
ed = K.create('textarea[name="content"]', {
uploadJson : '../Blog/upload',//post提交图片的地址,在后台按照往常的上传函数接受即可。
});
}); //提交事件
$('#submit').click(function() {
var content = ed.html();//获取编辑器内容
alert(content);
});
});
</script>
<!-- 调用js End --> </body>
</html>

PHP后台:

  • 此处使用了ThinkPHP的MVC模式搭建项目:
  • 所以传递到这个路径:../Blog/upload,其中 ../ 代表文件所在位置其上的所有目录结构。文件所在目录,看顶部图片。
  • 上传成功或失败,按照注释所给的json格式传递会前台即可。
  • 可以使用加盖水印功能

BlogAction.class.php->upload()

/**
* 处理上传图片
* @return [type] [description]
*/
Public function upload() {
//上传文件
import('ORG.Net.UploadFile');
//加盖水印
import('ORG.Util.Image'); $upload = new UploadFile();
$upload->savePath = './App/Uploads/';
$upload->autoSub = true;
$upload->subType = 'date';
$upload->dateFormat = 'Ymd'; // 返回值:
// //成功时
// {
// "error" : 0,
// "url" : "http://www.example.com/path/to/file.ext"
// }
// //失败时
// {
// "error" : 1,
// "message" : "错误信息"
// }
if ( !$upload->upload() ) {
echo json_encode(array('error'=>1, $upload->getErrorMsg()));
} else {
$UplaodFileInfo = $upload->getUploadFileInfo();
$imagePath = '/App/Uploads/' . $UplaodFileInfo[0]['savename']; //加盖水印
//地址前面要使用 ./ 当前路径
Image::water('.' . $imagePath, './App/Data/logo.gif'); echo json_encode(array('error'=>0, 'url'=>$imagePath));
} }

KindEditor - 富文本编辑器 - 使用+上传图片的更多相关文章

  1. django的admin或者应用中使用KindEditor富文本编辑器

    由于django后台管理没有富文本编辑器,看着好丑,展示出来的页面不美观,无法做到所见即所得的编辑方式,所以我们需要引入第三方富文本编辑器. 之前找了好多文档已经博客才把这个功能做出来,有些博客虽然写 ...

  2. (转)淘淘商城系列——KindEditor富文本编辑器的使用

    http://blog.csdn.net/yerenyuan_pku/article/details/72809794 通过上文的学习,我们知道了怎样解决KindEditor富文本编辑器上传图片时的浏 ...

  3. (转)学习淘淘商城第二十二课(KindEditor富文本编辑器的使用)

    http://blog.csdn.net/u012453843/article/details/70184155 上节课我们一起学习了怎样解决KindEditor富文本编辑器上传图片的浏览器兼容性问题 ...

  4. django项目中使用KindEditor富文本编辑器。

    先从官网下载插件,放在static文件下 前端引入 <script type="text/javascript" src="/static/back/kindedi ...

  5. django项目中使用KindEditor富文本编辑器

    先从官网下载插件,放在static文件下 前端引入 <script type="text/javascript" src="/static/back/kindedi ...

  6. KindEditor富文本编辑器使用

    我的博客本来打算使用layui的富文本编辑器,但是出了一个问题,无法获取编辑器内容,我参考官方文档,获取内容也就那几个方法而已,但是引入进去后始终获取的值为空,百度和bing都试过了,但是始终还是获取 ...

  7. vue-quill-editor富文本编辑器,上传图片自定义为借口上传

    vue-quill-editor富文本编辑器,上传图片自定义为借口上传 博客地址:https://blog.csdn.net/lyj2018gyq/article/details/82585194

  8. kindeditor富文本编辑器初步使用教程

    下载kindeditor 可以选择去官网下载(http://kindeditor.net/down.php),不过要FQ:或者直接CSDNhttp://download.csdn.net/downlo ...

  9. bootstrap-wysihtml5 ckeditor 修改富文本编辑器可以上传图片

    bootstrap-wysihtml5 ckeditor 修改富文本编辑器可以上传图片   bootstrap-wysihtml5实际使用内核为ckeditor     故这里修改ckeditor即可 ...

随机推荐

  1. HDOJ 1308.Is It A Tree?

    2015-07-15 问题简述: 给出一组节点关系,判断由这些节点组成的图是否为一颗树. 树只有一个根节点,每个节点只有一条边指向它,没有环. 原题链接:http://poj.org/problem? ...

  2. C++的常量折叠(一)

    前言 前几天女票问了我一个阿里的面试题,是有关C++语言的const常量的,其实她一提出来我就知道考察的点了:肯定是const常量的内存不是分配在read-only的存储区的,const常量的内存分配 ...

  3. 图片剪切之Croppic插件

    前几天做图片上传时需要进行图片的剪切和缩放,上网查找时找到了这个插件.样式很好看,功能也很OK.但是网上都是php进行后台处理图片的例子,然后只好慢慢琢磨C#的处理.插件地址是:http://www. ...

  4. QT在ui文件上建立信号操机制会不会对后期维护产生影响 - love4Mario的专栏 - 博客频道 - CSDN.NETQT在ui文件上建立信号操机制会不会对后期维护产生影响 - love4Mario的专栏 - 博客频道 - CSDN.NET

    QT在ui文件上建立信号操机制会不会对后期维护产生影响 - love4Mario的专栏 - 博客频道 - CSDN.NET QT在ui文件上建立信号操机制会不会对后期维护产生影响 分类: 学习心得 2 ...

  5. 对于java用发送http请求,请求内容为xml格式

    import java.io.BufferedInputStream; import java.io.BufferedReader; import java.io.ByteArrayOutputStr ...

  6. Runtime.exec使用错误导致延迟.md

    这篇文章是纪录了一个bug解决的过程,可是我还是没有可以真正地找出bug的缘由.希望大牛可以详解. 问题的发现 当接触的系统越来越大的时候,对于系统的性能越来越高的时候,找到表面问题的真正原因就慢慢地 ...

  7. Objective-c 方法的调用

    在书写了类的声明和实现后,应用程序如何去调用它呢? 在Objective-c中,调用方法的简单格式如下: 1⃣   [实例  方法];    如: [person setAge:32];  其中 pe ...

  8. ORACLE分科目统计每科前三名的学生的语句

    有个成绩表 score(student_no,Subject_no,Score)分别为学号,课程号,成绩.我想用语句查询出每科的前三名学生的学号,请各位高手教教小弟 1.创建测试语句:create t ...

  9. input autocomplete 下拉提示+支持中文

    js 代码: $.getJSON("/Foreign/Getforeign_routeEndPoint", function (data) {            $(" ...

  10. 关于java项目导入,所碰到的版本问题

    怎么修改myeclipse 项目中用的jdk版本 工具/原料 MyEclipse java项目 方法/步骤  首先打开MyEclipse,如下图所示  打开之后,找到我们的java项目  然后右键-- ...