PHP中使用CKEditor上传图片

Ckeditor下载地址:http://ckeditor.com/download
这里写图片描述

1、在页面中引入ckeditor核心文件ckeditor.js

<script type="text/javascript" src="ckeditor/ckeditor.js"></script>

2、在使用编辑器的地方插入HTML控件

<textarea id="TextArea1" cols="20" rows="2" class="ckeditor"></textarea>

3、将相应的控件替换成编辑器代码

<script type="text/javascript">
    CKEDITOR.replace('TextArea1');
</script>

4、配置编辑器
ckeditor的配置都集中在 ckeditor/config.js 文件中(自定义,可选)

5、配置图片上传(编辑器插件中必须包含图片插件,默认图片的编辑器只能使用外部链接)

这里写图片描述

6、去掉预览中的文字
在ckeditor/plugins/image/dialogs/image.js
搜索“d.config.image_previewText”,把(d.config.image_previewText||”)加粗的内容全删了。

7、开启上传功能
在ckeditor/plugins/image/dialogs/image.js
搜索:id:’Upload’,hidden:!0
实际上上传功能被隐藏了,把上面的!0改成false。

这里写图片描述

到这里图片上传控件已经可以显示,接下来需要做PHP文件处理

8、定义上传图片时的action
在ckeditor/config.js中加入:

config.filebrowserUploadUrl = '/index.php?action=address&do=upload'; //地址自定义

9.在php处理文件中加入upload方法;


if($do == "upload"){
    upload();
}


function upload(){  
    $extensions = array("jpg","bmp","gif","png");  
    $uploadFilename = $_FILES['upload']['name']; 
    $uploadFilesize = $_FILES['upload']['size'];
    if($uploadFilesize  > 1024*2*1000){
         echo "<font color=\"red\"size=\"2\">*图片大小不能超过2M</font>";  
         exit;
    }

    $extension = pathInfo($uploadFilename,PATHINFO_EXTENSION);  
    if(in_array($extension,$extensions)){  
        $uploadPath ="./uploadfile/";  
        $uuid = str_replace('.','',uniqid("",TRUE)).".".$extension;  
        $desname = $uploadPath.$uuid;  
        $previewname = './uploadfile/'.$uuid;  
        $tag = move_uploaded_file($_FILES['upload']['tmp_name'],$desname);  
        $callback = $_REQUEST["CKEditorFuncNum"];  
        echo "<script type='text/javascript'>window.parent.CKEDITOR.tools.callFunction($callback,'".$previewname."','');</script>";  
    }else{  
        echo "<font color=\"red\"size=\"2\">*文件格式不正确(必须为.jpg/.gif/.bmp/.png文件)</font>";  
    }  
}

10、上传成功。

  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 2
    评论
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值