原文地址:https://blog.csdn.net/lcw2007101/article/details/51332002
使用以上链接前辈的代码,出现无法保存,以及无法显示图片问题。我保存的路径为根目录下的Uploads目录,现将代码贴至博客
上代码:
<js file="__ROOT__/Lib/Ueditor/ueditor.config.js"/> <js file="__ROOT__/Lib/Ueditor/ueditor.all.min.js"/> <!--建议手动加在语言,避免在ie下有时因为加载语言失败导致编辑器加载失败--> <!--这里加载的语言文件会覆盖你在配置项目里添加的语言类型,比如你在配置项目里配置的是英文,这里加载的中文,那最后就是中文--> <js file="__ROOT__/Lib/Ueditor/lang/zh-cn/zh-cn.js"/> <script type="text/javascript" charset="utf-8"> window.UEDITOR_HOME_URL = "/images/"; //window.UEDITOR_CONFIG.imagePath='__ROOT__/Uploads/GeekList/images/'; window.UEDITOR_CONFIG.imageUrlPrefix='__ROOT__/Uploads/GeekList/images/'; $(document).ready(function () { UE.getEditor('info', { initialFrameHeight: 300, initialFrameWidth: 600, serverUrl: "{:U(MODULE_NAME.'/Geeklist/save_info')}" }); }); </script>
PHP部分:
public function save_info(){ $ueditor_config = json_decode(preg_replace("/\/\*[\s\S]+?\*\//", "", file_get_contents("./Lib/Ueditor/php/config.json")), true); $action = $_GET['action']; switch ($action) { case 'config': $result = json_encode($ueditor_config); break; /* 上传图片 */ case 'uploadimage': /* 上传涂鸦 */ case 'uploadscrawl': /* 上传视频 */ case 'uploadvideo': /* 上传文件 */ case 'uploadfile': $upload = new \Think\Upload(); $upload->maxSize = 3145728; $upload->savePath = '/GeekList/images/';// 设置附件上传目录 $upload->exts = array('jpg', 'gif', 'png', 'jpeg'); $info = $upload->upload(); if (!$info) { $result = json_encode(array( 'state' => $upload->getError(), )); } else { //返回的路径 $url = __ROOT__."/Uploads" . $info["upfile"]["savepath"] . $info["upfile"]['savename']; $result = json_encode(array( 'url' => $url, 'title' => htmlspecialchars($_POST['pictitle'], ENT_QUOTES), 'original' => $info["upfile"]['name'], 'state' => 'SUCCESS' )); } break; default: $result = json_encode(array( 'state' => '请求地址出错' )); break; } /* 输出结果 */ if (isset($_GET["callback"])) { if (preg_match("/^[\w_]+$/", $_GET["callback"])) { echo htmlspecialchars($_GET["callback"]) . '(' . $result . ')'; } else { echo json_encode(array( 'state' => 'callback参数不合法' )); } } else { echo $result; } }