如何使用laravel eloquent查询在数据库中存储html内容

时间:2017-12-28 17:14:07

标签: php laravel

我想将html表格存储到我的database中,但它会抛出error

  

数组到字符串转换

我正在将javascript的html表格发布到我的php控制器

var html = '<table><thead><tr><th>Product Name</th><th>Price</th></tr></thead><tbody><tr><td>Alphabet</td><td>200</td></tr></tbody></table>; 

 $.ajax({
    url:'store',
    type:'POST',
    data:{table:html},
    success:function(data){
       console.log(data)
    }
 });

laravel :发布要插入的数据

 Route::post('store',function(){

   $toStore = addslashes(['table' => $_POST['table']]);   

   \App\product_table::create($toStore);

 });

2 个答案:

答案 0 :(得分:2)

您收到此错误是因为addslashes()需要字符串并将数组传递给函数。

您只需将请求数组传递给create()方法:

\App\product_table::create(request()->all());

如果您仍想使用addslashes(),请执行以下操作:

\App\product_table::create(['table' => addslashes(request('table'))]);

答案 1 :(得分:1)

addslashes函数只接受字符串,您必须使用Request类才能获取提交的数据:

use Illuminate\Http\Request;

...

Route::post('store',function(Request $request) {

    $toStore = ['table' => addslashes($request->input('table'))];   

    \App\product_table::create($toStore);

});