Laravel用ajax提交这个表单,控制器code应该怎么写?
phpcn_u1582
phpcn_u1582 2017-05-16 16:54:07
[PHP讨论组]

用ajax提交一组表单,里面包含一个图片,
原来不用ajax提交的时候可以成功保存到数据库,
但因为上传前要压缩图片,所以改为ajax提交,ajax请求成功发送,但不能保存到数据库,
我想可能是控制器里面的代码需要修改,但不知怎么改,下面是代码。
ps:压缩图片用到了localResizeIMG插件。https://github.com/think2011/localResizeIMG

下面是用ajax提交表单的视图:




    
    
    
    
    



提交

//用了localResizeIMG插件,用于上传图片前先压缩。https://github.com/think2011/localResizeIMG

下面是原来没用ajax时候的控制器,可以成功保存到数据库,现在不知怎么改。

       public function store(Requests\StoreArticleRequest $request)
    {
        $article = new Article($request->except('photo'));
        $article -> user_id = \Auth::id();

        $file = $request->file('photo');
        $destinationPath = 'uploads/';
        $extension = $file->getClientOriginalExtension();
        $fileName = \Auth::user()->id . '_' . time() . '.' . $extension;
        $file->move($destinationPath, $fileName);
        $article -> photo = '/'.$destinationPath.$fileName;

        $article->save();

        return redirect()->action('ArticleController@show', ['id' => $article->id]);
    }

下面是StoreArticleRequest

   public function rules()
    {
        return [
            'title'=>'required',
            'content'=>'required',
            'photo'=>'image'
        ];
    }
phpcn_u1582
phpcn_u1582

全部回复(2)
巴扎黑

save 前你先 dd$article 数据看看

曾经蜡笔没有小新

csrf,ajax提交的时候不要忘。

热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板
关于我们 免责申明 举报中心 意见反馈 讲师合作 广告合作 最新更新
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送

Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号