Maison > développement back-end > tutoriel php > Laravel 5.1 表单提交数据(包含数组)插入数据库错误解决办法

Laravel 5.1 表单提交数据(包含数组)插入数据库错误解决办法

WBOY
Libérer: 2016-07-23 08:54:43
original
1368 Les gens l'ont consulté

当表单中有需要提交数组到数据库,比如要加一些客服QQ的信息,Laravel 会抛出输入的字段不能为数组的错误,解决办法也很简单。

增加多个QQ客服需要用到数组

Laravel 5.1 表单提交数据(包含数组)插入数据库错误解决办法

抛出的错误

  1. ErrorException in helpers.php line 671:preg_replace(): Parameter mismatch, pattern is a string while replacement is an array
复制代码

解决办法:

模型中把需要提交的字段“阻止”,在控制器中单独用Input接收并将其序列化,然后再进行保存就可以了。

模型示例:

  1. class Shop extends Model
  2. {
  3. public $timestamps=false;
  4. protected $guarded = ['qq','submit'];
  5. }
复制代码

控制器示例

  1. public function store(CheckNameRequest $request)
  2. {
  3. $shop = Shop::create(Input::get());
  4. $shop->qq = serialize(Input::get('qq'));
  5. $shop->save();
  6. }
复制代码

同理,在显示的时候将其反序列化即可。

原文地址:http://note.mango.im/article/24

解决办法, Laravel


source:php.cn
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal