【问题标题】:Get jQuery post array values in laravel在 laravel 中获取 jQuery post 数组值
【发布时间】:2015-09-02 16:18:17
【问题描述】:

使用j Query post一些数据正在发布。 Firebug 控制台帖子如下。如何在 Laravel 控制器页面中获取 tags[] 结果。请检查下面我的 laravel 代码,$request->tags 结果没有出现一些错误,显示“preg_replace(): Parameter mismatch, pattern is a string while replacement is an array”。请帮我解决这个问题。

触发错误控制台

createdby    1
tagcategoryid   1
tags[]  Music
tags[]  Reading
tags[]  test
tags[]  test1
tags[]  test2
tags[]  test3

Laravel 代码

public function store(InterestRequest $request)
    {
        $tag = new Tag;
        $tag->tagcategory_id  = $request->tagcategoryid;
        $tag->title_de        = $request->tags;
        $tag->title_en        = $request->tags;
        $tag->suggestion      = 'no';
        $tag->created_by      = $request->createdby;
        $tag->save();
    }

【问题讨论】:

  • 因为如果我记得,如果你在 Laravel 中使用 post,你必须设置一个选项。你必须用csrf-token管理
  • @Zl3n,我没明白。你能解释一下吗?
  • 这里有文档:laravel.com/docs/master/routing#csrf-x-csrf-token。我不确定这是你的问题,但我遇到了问题,在 jQuery 中通过 post 发送数据时
  • @Zl3n,如果我使用的是测试等虚拟数据。它工作正常。 $tag->title_de = '测试'; $tag->title_en = '测试';
  • 所以我不明白你的问题是什么

标签: php jquery laravel laravel-5


【解决方案1】:

您的 $request->tags 发布值是一个数组。您正在尝试使用数组设置字符串字段类型。在这种情况下,您必须遍历您的标签。

也许这会解决你的问题:

public function store(InterestRequest $request)
{
    foreach($request->input('tags') as $tag) {
       Tag::create(array(
           'tagcategory_id' => $request->input('tagcategoryid'),
           'title_de'       => $tag,
           'title_en'       => $tag,
           'suggestion'     => 'no';
           'created_by'     => $request->input('createdby'),
       ))
    }
}

【讨论】:

    【解决方案2】:

    我已经申请了foreach。这个对我有用。

    public function store(InterestRequest $request)
        {
            foreach(Input::get('tags') as $tags) {
                $tag = new Tag;
                $tag->tagcategory_id = $request->tagcategoryid;
                $tag->title_de = $tags;
                $tag->title_en = $tags;
                $tag->suggestion = 'no';
                $tag->created_by = $request->createdby;
                $tag->save();
            }
        }
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2021-03-05
      • 2015-11-05
      • 2017-03-23
      • 1970-01-01
      • 2014-03-31
      • 2011-03-20
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多