ckeditor + ckfinder + oss存储
ckeditor 与 ckfinder 的整合方法 网上有很多,这里我也就不说了。 (主要是以前整合的现在忘记咋弄的了0.0)
我这里整合后直接使用js代码
<script type="text/javascript">
CKEDITOR.replace('content', {
filebrowserBrowseUrl: '__SYSTEM__/ckfinder/ckfinder.html',
filebrowserImageBrowseUrl: '__SYSTEM__/ckfinder/ckfinder.html?type=Images',
filebrowserFlashBrowseUrl: '__SYSTEM__/ckfinder/ckfinder.html?type=Flash',
filebrowserUploadUrl: "{:U('Public/uploadCkfinder')}",//默认插件自带的上传地址__SYSTEM__/ckfinder/core/connector/php/connector.php?command=QuickUpload&type=Files',
filebrowserImageUploadUrl: "{:U('Public/uploadCkfinder')}",//默认插件自带的上传地址'__SYSTEM__/ckfinder/core/connector/php/connector.php?command=QuickUpload&type=Images',
filebrowserFlashUploadUrl: "{:U('Public/uploadCkfinder')}",//默认插件自带的上传地址'__SYSTEM__/ckfinder/core/connector/php/connector.php?command=QuickUpload&type=Flash',
});
</script>
主要参数:filebrowserUploadUrl 地址修改了就可以。
我这里是修改成自己上传文件的地址 使用的环境 tp3.2.3的
后台上传方法:
/**
* 富文本远程上传
*/
public function uploadCkfinder(){
$upload = new \Think\Upload();
// 实例化上传类
$upload->maxSize = C('UPLOAD_FIEL_MAX_SIZE');
// 设置附件上传大小
$upload->exts = array('jpg', 'gif', 'png', 'jpeg');
// 设置附件上传类型
$upload->rootPath = './uploads/';
// 设置附件上传根目录
$upload->savePath = '';
// 设置附件上传(子)目录
// 上传文件
$info = $upload->upload();
//取出第一个元素
$data = current($info);
if (!$info) {
// 上传错误提示错误信息
echo '<script type="text/javascript">
window.parent.CKEDITOR.tools.callFunction("1", "", "'.$upload->getError().'");
</script>';
} else {
//上传成功
$file = './uploads/'.$data['savepath'].$data['savename'];//文件路径,必须是本地的。
//上传本地文件到阿里oss
$ossUpload = $this->aliOssUpload( $file , $data);
if($ossUpload == '1000'){
//获取完整OSS地址 , 如果相站点下可以只获取 相对地址。
$path['path'] = get_oss_img_crop($data['savepath'].$data['savename'] );
echo '<script type="text/javascript">
window.parent.CKEDITOR.tools.callFunction("1", "'.$path['path'].'", "上传成功!" , "'.$data['savename'].' ");</script>';
exit;
} else {
echo '<script type="text/javascript">
window.parent.CKEDITOR.tools.callFunction("1", "", "上传失败");
</script>';
exit;
} }
}
//这里返回的是 完整地址,返回地址可以自己修改。
顺便付上 上传OSS方法
/**
* 阿里对象存储-文件上传
* @datatime 2018/1/19 16:20
* @author lgp
*/
private function aliOssUpload( $file = '' , $info = array() ){
if( !$file || !$info ){
return '1008';
}
// 上传成功
vendor('aliyun-oss-php-sdk-master.autoload');
$accessKeyId = C('ALI_OSS_CONFIG.accessKeyId');
$accessKeySecret = C('ALI_OSS_CONFIG.accessKeySecret');
$endpoint = C('ALI_OSS_CONFIG.endpoint');//你的阿里云OSS地址
$isCName = C('ALI_OSS_CONFIG.isCName');
$ossClient = new \OSS\OssClient($accessKeyId, $accessKeySecret, $endpoint , $isCName);
$bucket = C('ALI_OSS_CONFIG.bucket');//oss中的文件上传空间
$object = $info['savepath'] .$info['savename'];//想要保存文件的名称
//$file = './uploads/'.$info['file']['savepath'].$info['file']['savename'];//文件路径,必须是本地的。
try{
$result = $ossClient->uploadFile($bucket,$object,$file);
//上传成功,自己编码
if($result['status'] == 0){
if( C('ALI_OSS_CONFIG.unlink_file') == 1){
//是否删除本地
unlink($file);
}
return '1000';
//$this->apiReturn('1000' , $info['file']['savepath'] . $info['file']['savename'] );
} else {
//$this->apiReturn('1002');
return '1008';
} }catch (Exception $e) {
//$this->apiReturn('1002');
return '1008';
}
}
ckeditor + ckfinder + oss存储的更多相关文章
- jsp中如何整合CKEditor+CKFinder实现文件上传
最近笔者做了一个新闻发布平台,放弃了之前的FCKEditor编辑器,使用了CKEditor+CKFinder,虽然免费的CKFinder是Demo版本,但是功能完整,而且用户都是比较集中精神发新闻的人 ...
- 网络编辑器插件ckeditor+ckfinder配置
原帖地址 另外一个 去掉编辑器的下边栏 在config.js中加入: config.removePlugins = 'elementspath'; config.resize_enabled = fa ...
- 在ASP.NET项目中使用CKEditor +CKFinder实现图片上传功能
前言 之前的项目中一直使用的是FCKeditor,昨天突然有个想法:为什么不试一下新的CKEditor呢?于是花了大半天的时间去学习它的用法,现在把我的学习过程与大家分享一下. 谈起FCKeditor ...
- (配置)CKEditor+CKFinder+php上传配置,根据年月命名创建文件夹来存放
CKEditor+CKFinder+php上传配置 新版本的CKEditor只提供了基本的文本编辑功能,上传模块由另一个组件CKFinder.这里主要记录CKFinder上传的一些参数配置,能够成功上 ...
- CKEditor + CKFinder 实现编辑上传图片配置 (二)
CKEditor + CKFinder 实现编辑上传图片配置 (二) 上传图片时,如果上传的图片过大,默认情况情况下回自动裁剪,代码如图 \ckfinder\config.php 目录下的配置文件co ...
- CKEditor + CKFinder 实现编辑上传图片配置
下载最新版 ckfinder 本人下载的php版本 https://cksource.com/ckfinder/download 下载最新版ckeditor http://ckeditor.com/ ...
- .Net在线编辑器:KindEditor及CkEditor+CkFinder配置说明
Net在线编辑器:KindEditor及CkEditor+CkFinder配置说明 一.KindEditor(免费) KindEditor是一套开源的HTML可视化编辑器,主要用于让用户在网站上获得所 ...
- CKEditor && CKFinder 配置
准备 ...
- Java项目接入阿里云OSS存储
需求背景 目前公司内部项目所支持的文件云存储方式还是公司内部项目组提供的方案,但在时间的考验之下,弊端显现,尤其是灾备切换过程中需要切换访问地址,这种操作不方便,更可能因为中间过程的失误导致资源不可用 ...
随机推荐
- SpringMVC学习(一)——概念、流程图、源码简析
学习资料:开涛的<跟我学SpringMVC.pdf> 众所周知,springMVC是比较常用的web框架,通常整合spring使用.这里抛开spring,单纯的对springMVC做一下总 ...
- Django 和 struts 对比
转自:http://www.blogjava.net/shaofan/archive/2007/04/06/109007.html 假设:用两者写一个最小的WEB程序.过程可以参照:1.struts的 ...
- sourcemaps and persistent modification in chrome
在现代web开发中,往往我们会借助类似sass,less之类的预处理器来加快开发进度,但是随着项目的增大,你可能无法清楚明确地知道一个css rule到底是从哪个less/scss文件中编译出来的,这 ...
- Scrapy框架Windows下安装
在windows下安装好Python3 后,安装Scrapy也有许多种方法,我这里采用pip 安装.前提您已经安装了pip 直接在cmd命令行中 pip install Scrapy building ...
- Struts2学习-struts+spring
学习帮助网址:http://www.cnblogs.com/S-E-P/archive/2012/01/18/2325253.html http://blog.csdn.net/ad921012/ar ...
- macbook pro 2016 2017 15寸 雷电3 外接显卡 epu 简单教程(不修改UEFI)
雷电3外接显卡效果还不错,但是除了akitio node 其他厂家并不会维护自己的固件来适配新机型,我自己买的mbp 2016 15''就出现了和AORUS Gaming Box 1070不兼容的问题 ...
- SOA架构
基于服务的SOA架构_后续篇 今天是元宵节,首先祝各位广大博友在接下来的光阴中技术更上一层,事事如意!(没能在元宵节发布,今天就补上吧) 昨天简单介绍了一下本人在近期开发过的一个电商购物平台的架构 ...
- 入门学习webpack笔记
注意事项: 1.预热知识:前端模块化.commonJS最好提前了解.commonJS语法最好熟悉. 2.commonJS中,module表示当前模块,module.exports(或者exports) ...
- BZOJ5301:[CQOI2018]异或序列(莫队)
Description 已知一个长度为 n 的整数数列 a[1],a[2],…,a[n] ,给定查询参数 l.r ,问在 [l,r] 区间内,有多少连续子 序列满足异或和等于 k . 也就是说,对于所 ...
- Centos6 Ngnix和fastcgi搭建
一.下载Nginx 依赖pcre,zlib,openssl 下载解压包,解压后进入 ./configue make make install 默认安装到/usr/local/ngnix 可执行文件在/ ...