如何将CKeditor编辑器的上传和thinkphp结合
1个回答
2016-12-21 · 知道合伙人互联网行家
关注
展开全部
当在模板中,将ckeditor配置好后,需要在JS代码中进行一些调整或修改,如下:
CKEDITOR.replace( 'v_content', {
filebrowserImageUploadUrl : '/Files/ck_upload.shtml'
});
复制代码
这里是在JS部分进行了修改,指定了当使用编辑器的图片功能时,上传的请求地址在那里。一般来说ckeditor是不带上传的,把上面的配置调整好后,点击图片,就会出现上传功能,但是只是个架子,没有实际效果。具体的处理请看下面:
function ck_upload($ftype = 'image')
{
if($ftype == 'image'){
$ftype = array('jpg', 'gif', 'png', 'jpeg', 'bmp');}
header("Content-type:text/html");
import('ORG.Net.UploadFile');
$upload = new UploadFile(); // 实例化上传类$upload->maxSize = -1; // 设置附件上传大小$upload->allowExts = $ftype; // 设置附件上传类型$upload->savePath = './Public/Uploads/'; // 设置附件上传目录$upload->autoSub = true;
$upload->subType = 'date';
if (!$upload->upload()) {// 上传错误提示错误信息echo "<script type=\"text/javascript\">window.parent.CKEDITOR.tools.callFunction(".$this->_get('CKEditorFuncNum').", '/', '上传失败," . $upload->getErrorMsg() . "!');</script>";} else {
//// 上传成功 获取上传文件信息并存入数据库$info = $upload->getUploadFileInfo();
//获取具体的路径,用于返回给编辑器
$savepath = $info[0]['savepath'].$info[0]['savename'];//下面的输出,会自动的将上传成功的文件路径,返回给编辑器。
echo "<script type=\"text/javascript\">window.parent.CKEDITOR.tools.callFunction(".$this->_get('CKEditorFuncNum').",'$savepath','');</script>";}
}
CKEDITOR.replace( 'v_content', {
filebrowserImageUploadUrl : '/Files/ck_upload.shtml'
});
复制代码
这里是在JS部分进行了修改,指定了当使用编辑器的图片功能时,上传的请求地址在那里。一般来说ckeditor是不带上传的,把上面的配置调整好后,点击图片,就会出现上传功能,但是只是个架子,没有实际效果。具体的处理请看下面:
function ck_upload($ftype = 'image')
{
if($ftype == 'image'){
$ftype = array('jpg', 'gif', 'png', 'jpeg', 'bmp');}
header("Content-type:text/html");
import('ORG.Net.UploadFile');
$upload = new UploadFile(); // 实例化上传类$upload->maxSize = -1; // 设置附件上传大小$upload->allowExts = $ftype; // 设置附件上传类型$upload->savePath = './Public/Uploads/'; // 设置附件上传目录$upload->autoSub = true;
$upload->subType = 'date';
if (!$upload->upload()) {// 上传错误提示错误信息echo "<script type=\"text/javascript\">window.parent.CKEDITOR.tools.callFunction(".$this->_get('CKEditorFuncNum').", '/', '上传失败," . $upload->getErrorMsg() . "!');</script>";} else {
//// 上传成功 获取上传文件信息并存入数据库$info = $upload->getUploadFileInfo();
//获取具体的路径,用于返回给编辑器
$savepath = $info[0]['savepath'].$info[0]['savename'];//下面的输出,会自动的将上传成功的文件路径,返回给编辑器。
echo "<script type=\"text/javascript\">window.parent.CKEDITOR.tools.callFunction(".$this->_get('CKEditorFuncNum').",'$savepath','');</script>";}
}
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询