在sae下,kindeditor编辑器的图片不能显示

操作方法

  • 01

    我在使用thinkphp框架时,kindeditor编辑器的图片不能显示,今天认真研究了半天框架代码,终于找到了一个比较好的方法,自定义了一个方法,getStorageUrl(),下面结合onethink实例做一详细解说,绝对原创,并非抄袭 具体步骤: 第一步:在SAE的storage服务中创建一个domain,我这里创建的domain名为editor。没有使用经验的朋友,可以参考我即将发表创建domain的经验。 第二步:以onethink中topcomment挂载的插件Editor为例,涉及的文件:AddonsEditorControllerUploadController.class.php 第三步:sae上上传图片使用的驱动我们要改为Sae,即将UploadController.class.php类中的 upload方法中的代码: setting为ApplicationHomeConfcofig.php中的'EDITOR_UPLOAD',看下图修改 /* 调用文件上传组件上传文件 */ $this->uploader = new Upload($setting,'Local'); 修改为: $this->uploader = new Upload($setting,'Sae'); 这样修改后,上传时的驱动就变成了ThinkPHPLibraryThinkUploadDriverSae.class.php了,到现在我们就实现了图片上传到storage的目的,你可以到storage管理页面确认一下:http://sae.sina.com.cn/?m=storage&a=domain&app_id=用户名,需要登录sae,但是我们并没有解决掉图片路径回掉的问题。到这一步虽然图片上传成功但是在编辑器中却显示不出来,下面我参照ThinkPHPLibraryThinkUploadDriverSae.class.php的一些代码在AddonsEditorControllerUploadController.class.php类中加了getStorageUrl方法并对原有的upload方法做了进一步修改,具体看第四步的代码: 第四步:代码展示 /* *sae下获取上传文件的storage的地址, * **/ public function getStorageUrl($root,$filename){ $arr=explode('/',trim($root,'./')); $domain=strtolower(array_shift($arr)); $st=new SaeStorage();//用了SaeStorag中的API return $st->getUrl($domain,$filename); } 这是新增的方法,参考了Sae.class.php类的__construct方法和save方法,即图中标示代码的启发: save方法 对upload方法做的进一步修改: 原有的代码: 现在的代码: 为了方便,我把代码也拷贝过来: /* 上传图片 */ public function upload(){ session('upload_error', null); /* 上传配置 */ $setting = C('EDITOR_UPLOAD'); /* 调用文件上传组件上传文件 */ $this->uploader = new Upload($setting, 'Sae'); $info   = $this->uploader->upload($_FILES); if($info){ //$url = C('EDITOR_UPLOAD.rootPath').$info['imgFile']['savepath'].$info['imgFile']['savename']; $url = $info['imgFile']['savepath'].$info['imgFile']['savename']; $url = str_replace('./', '/', $url); $info['fullpath'] = $this->getStorageUrl($setting['rootPath'],$url); //$info['fullpath'] = __ROOT__.$url; } session('upload_error', $this->uploader->getError()); return $info; }

(0)

相关推荐

  • office word中图片不显示怎么办

    使用office word软件进行办公的时候,多word软件进行了不同的设置之后,里面的图片不能够正常的展示出来,导致不能查看到图片信息.这是因为可能使用过程中使用了某些快捷键,将word显示功能去掉 ...

  • 网站后台编辑器插入图片技巧

    网站后台编辑器插入图片,是网站维护人员经常操作的地方,部分第三方平台有些前端会员中心也会涉及到编辑器,操作方法一样,这里以网站后台编辑器插入图片为例,讲述图片编辑的方法以及编辑图片属性的重要性. 操作 ...

  • UNIX下VI编辑器使用

    vi(文本输入模式) 命令 功能 a 在光标后追加文本 A 在行末追加文本 i 在光标前追加文本 o 在光标下插入新的一行 vi(末行模式) 命令 功能 :w 写缓冲区,保存更改继续在vi中工作 :w ...

  • Win7系统下浏览网页时图片显示不出来怎么办?

    Win7系统下,我们经常会使用浏览器来浏览一些站点查看图片,但近日有网友在访问一些站点的时候出现了网页图片显示不出来的情况,出现这种情况有时候是电脑网速慢,图片加载不成功导致,有时候是由于用户浏览器设 ...

  • 96微信编辑器背景图片素材怎么用

    96微信编辑器背景图片素材怎么用: 很多炫酷的背景是怎么做出来的呢?大家可以点击选择背景,选择自己喜欢的背景. 大家在选择好背景,修改好背景上面内容,复制的时候大家要注意一点,复制带有背景素材不能使用 ...

  • Win10系统下使用excel2010删除图片背景

    Office 2010新增了图片背景删除功能,用户们可以快速有效的使用excel2010删除图片背景,可是还有好多人不会使用:如何使用excel2010删除图片背景呢?下面我们的小编给大家分享下解决方 ...

  • 如何使用PR中的变换给下拉效果的图片添加动态模糊

    如何使用PR中的变换给下拉效果的图片添加动态模糊效果呢?一起来看看具体操作步骤吧.1. 首先打开电脑上的PR软件,将图片导入软件之后,拖动到右侧的时间轴上,然后点击上方的效果菜单.2. 找到变换效果, ...

  • Linux下vi编辑器粘贴复制剪切功能

    Centos Linux下vi编辑器实现简单的粘贴复制剪切功能 操作方法 01 如果想把文件内的第三行内容黏贴到第十五行: 1.进入你的文件,(处于命令模式,而不是编辑模式) 2.将你的光标移到你的第 ...

  • 给你的硬盘下加漂亮的图片当背景

    给你的硬盘下加漂亮的图片当背景 步骤/方法 01 打开记事本编辑,输入一下源码: [ExtShellFolderViews] {BE098140-A513-11D0-A3A4-00C04FD706EC ...