layui编辑器上传图片接口请求失败和传输编辑器的内容到后台失败的问题

编辑器的问题
点击上传图片会显示“请求接口失败”

前端的代码如下:


在js中的代码如下:

        layedit.set({ 
            uploadImage: {
                url: '{:U("admin/Interface/uploadpic","","")}',
                type: 'post',
            }
        });

        var index = layedit.build('demo', {
            tool: ['left', 'face', 'image', 'strong', 'italic', 'underline', 'del', 'center', 'right']
        });

其中的layedit.set是编辑器的图片上传接口,后端代码如下:
public function uploadpic(){
c o n f i g = a r r a y ( ′ m i m e s ′ = > a r r a y ( ) , / / 允 许 上 传 的 文 件 M i M e 类 型 ′ m a x S i z e ′ = > 0 , / / 上 传 的 文 件 大 小 限 制 ( 0 − 不 做 限 制 ) ′ e x t s ′ = > a r r a y ( ′ j p e g ′ , ′ g i f ′ , ′ p n g ′ , ′ j p g ′ , ′ b m p ′ , ′ p s d ′ , ′ r a r ′ , ′ z i p ′ ) , / / 允 许 上 传 的 文 件 后 缀 ′ a u t o S u b ′ = > t r u e , / / 自 动 子 目 录 保 存 文 件 ′ s u b N a m e ′ = > ′ ′ , / / 子 目 录 创 建 方 式 , [ 0 ] − 函 数 名 , [ 1 ] − 参 数 , 多 个 参 数 使 用 数 组 ′ r o o t P a t h ′ = > A P P P A T H , / / 保 存 根 路 径 / / ′ r o o t P a t h ′ = > ′ . / w e b / ′ , / / 保 存 根 路 径 ′ s a v e P a t h ′ = > ′ u p l o a d s / i m a g e s / ′ , / / 保 存 路 径 ) ; / / e c h o r e a l p a t h ( config = array( 'mimes' => array(), //允许上传的文件MiMe类型 'maxSize' => 0, //上传的文件大小限制 (0-不做限制) 'exts' => array('jpeg','gif','png','jpg','bmp','psd','rar','zip'), //允许上传的文件后缀 'autoSub' => true, //自动子目录保存文件 'subName' => '', //子目录创建方式,[0]-函数名,[1]-参数,多个参数使用数组 'rootPath' => APP_PATH, //保存根路径 //'rootPath' => './web/', //保存根路径 'savePath' => 'uploads/images/', //保存路径 ); //echo realpath( config=array(mimes=>array(),//MiMemaxSize=>0,//(0)exts=>array(jpeg,gif,png,jpg,bmp,psd,rar,zip),//autoSub=>true,//subName=>,//[0][1]使rootPath=>APPPATH,////rootPath=>./web/,//savePath=>uploads/images/,//);//echorealpath(config[‘rootPath’]);
KaTeX parse error: Expected 'EOF', got '\Think' at position 14: upload = new \̲T̲h̲i̲n̲k̲\Upload(config);
$z = u p l o a d − > u p l o a d O n e ( upload -> uploadOne( upload>uploadOne(_FILES[‘file’]);
if (!$z){
echo u p l o a d − > g e t E r r o r ( ) ; / / upload->getError(); // upload>getError();//this->error($upload->getError());
}else{
a r r = a r r a y ( ′ s r c ′ = > S I T E U R L . arr = array('src'=>SITE_URL. arr=array(src=>SITEURL.z[‘savepath’].$z[‘savename’]);
t h i s − > s u c c e s s ( this->success( this>success(arr);
}
这里的success其实是一段json_encode函数。

后端一定要向前端返回数据,可在浏览器中查到,图如下:
layui编辑器上传图片接口请求失败和传输编辑器的内容到后台失败的问题_第1张图片
此时就可以正常传输图片了。
layui编辑器上传图片接口请求失败和传输编辑器的内容到后台失败的问题_第2张图片
编辑器的内容无法写到数据库
前端代码为: 提交
js代码为:

        form.on('submit(formdate)', function (data) {
            data.field.content = layedit.getContent(index);
            $.ajax({
                url: '{:U("admin/Interface/getfedback","","")}',
                type: 'POST',
                data: data.field,
                success: function (data) {
                    if (data.code == 0) {
                        layer.msg('提交成功,感谢您的反馈!', { time: 2000 }, function () {
                            // window.location.replace('http://10.63.15.76/xiaomifeng3/document');
							$('#usenum').val('');
							$('#phonenum').val('');
							$('#LAY_layedit_1').contents().find('body').html('');
                        });
                    };

                },
            });

后端代码为:

public function getfedback(){
    $model = M('Lianxi');
    $data['user_name'] = $_REQUEST['user_name'];
    $data['phone'] = trim($_REQUEST['phone']);
    $data['content'] = $_REQUEST['content'];
    $data['stime'] = date('Y-m-d H:i:s');
    if($data['content']==''&&$data['phone']==''){
        $this->error('check data');
    }else{
        if($model->add($data)){
            $this->success();
        }else{
            $this->error('check data');
        }
    }
}

ps:后来发现传不过去是因为路由的问题,如果朋友们发现返回的是一个网页可能也是这个原因,在config或在index.php中看下有没有路由被过滤了

你可能感兴趣的:(入门)