当前位置: 代码网 > it编程>编程语言>Php > CKEditor4结合php实现上传图片功能

CKEditor4结合php实现上传图片功能

2024年05月15日 Php 我要评论
ckedit4是没有图片上传功能的,单我们可以通过配置 config.js 文件来设置图片上传的接口,然后结合后端程序实现图片上传。本文讲解ckeditor4结合php实现上传图片功能的方法。配置 c

ckedit4是没有图片上传功能的,单我们可以通过配置 config.js 文件来设置图片上传的接口,然后结合后端程序实现图片上传。本文讲解ckeditor4结合php实现上传图片功能的方法。

配置 config.js 文件

找到ckeditor目录下的config.js文件,添加两个配置

config.extraplugins = 'uploadimage'
config.filebrowserimageuploadurl =  '/api/uploadimg/upload.php'
//filebrowserimageuploadurl 替换成你需要上传的接口

我们点击图片按钮时候,便发现弹窗中多了上传的tag界面 ,里面有选择文件按钮,可以上传图片到服务器,也就是会把file文件发送到上面设置的filebrowserimageuploadurl接口。

upload.php 后端处理文件

tips:

1、ckedit4需要返回的json文件处理后续操作,使用json_encode;

2、$_request["ckcsrftoken"]是ckedit4需要的;

3、做了文件格式验证和文件大小处理;

4、文件名uniqid唯一处理。

<?php
$callback = $_request["ckcsrftoken"];
$list=array("uploaded"=>'0','callback'=>$callback);
$upaddress = "/uploads/allimg/".strftime("%y%m",time())."/";
echo upload();
function upload(){
	global $list,$upaddress;
	$callback = $_request["ckcsrftoken"];
	$extensions = array("jpg","bmp","gif","png");
	$allowed_types = ['image/jpeg', 'image/png', 'image/gif'];
	$uploadfilename = $_files['upload']['name'];
	$uploadfilesize = $_files['upload']['size'];
	$uploadfiletype = $_files['upload']['type'];
	$extension = pathinfo($uploadfilename,pathinfo_extension);
	if(is_uploaded_file($_files['upload']['tmp_name']) && $uploadfilesize < 1024*300 && in_array($uploadfiletype, $allowed_types) && in_array($extension,$extensions)){
		$uploadpath = $_server['document_root'].$upaddress;
		if(!file_exists($uploadpath))
		{
			mkdir($uploadpath,0777,true);
		}
		$uuid = str_replace('.','',uniqid("",true)).".".$extension;
		$desname = $uploadpath.$uuid;
		$tag = move_uploaded_file($_files['upload']['tmp_name'],$desname);
		$list['uploaded']=1;
		$list['filename']=$uuid;
		$list['url']=$upaddress.$uuid;
		return json_encode($list);
	}else{
		$list['error']="文件类型不对或文件太大!";
		return json_encode($list);
	}
}
?>

总结

到此这篇关于ckeditor4结合php实现上传图片功能的文章就介绍到这了,更多相关ckeditor4实现上传图片内容请搜索代码网以前的文章或继续浏览下面的相关文章希望大家以后多多支持代码网!

(0)

相关文章:

版权声明:本文内容由互联网用户贡献,该文观点仅代表作者本人。本站仅提供信息存储服务,不拥有所有权,不承担相关法律责任。 如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至 2386932994@qq.com 举报,一经查实将立刻删除。

发表评论

验证码:
Copyright © 2017-2025  代码网 保留所有权利. 粤ICP备2024248653号
站长QQ:2386932994 | 联系邮箱:2386932994@qq.com