巅云智能建站平台搭建版(创业流派版)火爆上线,毕生受权!新增:文章智能收罗+全站真静态打包+都会分站+智能小法式+不法词过滤+H5自顺应+智能链词等功效功效概况
赞助文档Help

Yii连系CKEditor完成图片上传功效

一佰互联网站建造(www.taishanly.com) 宣布日期 2020-04-29 09:01:09 阅读数: 104

这几天做的一个名目中须要在所见即所得编辑器中完成图片上传的功效,我由于比拟喜好CKEditor的界面而挑选了它。固然有跟CKEditor共同杰出的CKFinder,不过这个东东的功效太庞杂,简略看了下CKEdtior的文档,发明这个功效仍是能够本身完成而不必借助CKFinder的。

上面代码固然基于Yii Framework的,可是用其余框架或说话思绪倒是完整一样的,有须要的童鞋能够参考一下。

起首要让CkEditor呈现图片上传的功效,须要设置装备摆设编辑器的filebrowserImageUploadUrl属性:
复制代码 代码以下:
CKEDITOR.replace( "editor1",
    {
        filebrowserUploadUrl : "/uploader/upload.php",
        filebrowserImageUploadUrl : "/uploader/upload.php?type=Images"
    });
而后在对应的URL上完成图片上传的功效,并向CKEditor前往特定格局的HTML代码,CKEditor就能够一般预览并拔出图片了。
上面只截取节制器的局部代码,Controller局部我是如许完成的:
复制代码 代码以下:
/**
 * 保管上传的图片
 *
 * @return string javascript code
 * @author lfyzjck
 **/
public function actionImg($type, $CKEditor, $CKEditorFuncNum, $langCode = "zh-cn")
{
 if(empty($CKEditorFuncNum) || $type != "Images"){
  $this->mkhtml($CKEditorFuncNum,"","毛病的函数挪用");
 }
 if(isset($_FILES["upload"])){
  //获得对图片上传设置装备摆设
  $options = Options::model()->findByPk(1);
  $form = new UploadForm("image",$options);
  $form->upload = CUploadedFile::getInstanceByName("upload");
  if($form->validate()){
  //文件名:时辰+源文件名
   $target_filename = date("Ymd-hm",time()).$form->upload->getName();
   $path = Yii::app()->basePath."/../uploads/".$target_filename;   //图片保管途径
   $form->upload->saveAs($path);
   $this->mkhtml($CKEditorFuncNum,Yii::app()->baseUrl."/uploads/".$target_filename, "上传胜利");
  }
  else{
   $this->mkhtml($CKEditorFuncNum,"",$form->getError("upload"));
  }
 }
}
/**
 * 前往CKEditor的提醒信息
 *
 * @return void
 * @author lfyzjck
 **/
private function mkhtml($fn, $fileurl, $message)
{
 $str = "";
 exit($str);
}
须要出格申明的mkhtml函数,他会挪用CKEditor的函数发生提醒信息。上传胜利的时辰将图片链接前往,CKEditor会按照URL天生图片预览。

而后是UploadForm的代码,这里会考证图片的格局和巨细是不是是合适请求。
复制代码 代码以下:
class UploadForm extends CFormModel
{
 public $upload;

 private $options;
 private $type;

 public function __construct($type, $options){
  $this->options = $options;
  $this->type = $type;
 }
 /**
  * Declares the validation rules.
  * The rules state that username and password are required,
  * and password needs to be authenticated.
  */
 public function rules()
 {
  return array(
   array("upload", "file",
    "types" => $this->options->getAttribute("allow_".$this->type."_type"),
    "maxSize" => 1024 * (int)$this->options->getAttribute("allow_".$this->type."_maxsize"),
    "tooLarge"=>"文件巨细跨越限定",
   ),
  );
 }
}

一佰互联是天下着名建站品牌办事商,咱们有九年、网站建造、网页设想、php开辟和域名注册及假造主机办事经历,供给的办事更是天下着名。最近几年来还整合团队上风自立开辟了可视化多用户”“3.0平台版,拖拽排版网站建造设想,轻松完成pc站、手机微网站、小法式、APP一体化全网营销网站扶植 ,已胜利的为天下上百家收集公司供给自助建站平台搭建办事。

相干消息more

20
05月
【搜索引擎优化云优化】建站早期任务的方法应当具有这

【云】早期的方法具有 此刻良多人对网站的等候愈来愈高,由于究竟结果咱们有愈来愈多的常识和一些手艺,要从收集中间接获得,究竟结果经由过程寻觅图书的方... >>概况

02
01月
高端网站扶植若何深挖用户需要?

302018-03 高端网站扶植若何深挖用户需要? 网站扶植这个行业合作是愈来愈剧烈了,几近没加建站... >>概况

05
11月
经由过程甚么体例增添建造网站的表面评分

互联网当中的信息载体实在便是网站,特别是此刻每个网站当中建造气概都差别,以是此刻不论是公司仍是小我都有本身零丁的网站,当大师阅读旁观网站的... >>概况

17
04月
传蔡文胜以20万元售出“邓州”域名dengz

据悉,处所域名“邓州”dengzhou.com已被域名大佬蔡文胜低调卖出,并将被启用建为邓州网。今朝详细买卖价钱不... >>概况

高端网站扶植

美工统筹SEO,为企业电子商务营销助力!

德律风:

023-85725751
建站

产物

域名注册 假造主机 云办事器 企业邮局
智能建站 APP打包 微站/小法式 创业平台
网站推行 媒体营销 智能收罗 AI机械人
400德律风 短信营销 店销机械人
私家定制 流派网站