2017-12-28 14 views
2
databasehtml 테이블을 저장할

를 사용하여 데이터베이스에 HTML 내용을 저장할 수 있지만laravel 웅변 쿼리

내가 게시하도록하겠습니다 문자열 변환이 error

배열을 던지는 방법 내 php 컨트롤러 javascript에서 HTML 테이블

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

addslashes 기능을 삽입 할 게시, 당신은 제출 된 데이터를 얻기 위해 Request 클래스를 사용해야합니다 :

use Illuminate\Http\Request; 

... 

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

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

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

}); 
+2

당신 복사 붙여 넣기 '['테이블 '했습니다 => addslashes (...)]'내 답변에서,하지만 당신은 여분의')'를 끝까지 잊어 버렸습니다. –

3

당신을 ' addslashes()이 문자열을 예상하고 배열에 함수를 전달하기 때문에이 오류가 발생합니다.

당신은 단지 create() 방법에 요청 배열을 전달할 수 있습니다

: 당신은 어쨌든 addslashes()를 사용하려면

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

, 이렇게 :

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