2017-12-08 5 views
0
내가 Laravel 검색을 만들기 위해 노력하고

PHP - Laravel 검색 컨트롤러

HTML 양식 지금

<form> <select name="hidArray[]"> <option name="test">Test</option> <option name="test2">Test2</option> </select> </form> 

입니다 웅변의 방법으로 배열로 POST 데이터를 처리하는 시점에 붙어, 이 입력은 으로 초기화되었습니다. 부트 스트랩 멀티 셀

POST 요청으로 입력되면 아래 어느와 같은 배열 지금

array:2 [▼ 
0 => "test" 
1 => "test2" 
] 

expetced 한, 나는 데이터베이스에서 결과를 얻을 수 웅변 쿼리를 형성합니다. 그것이 작동하지 않는 경우이 방법을

if($request->has('hidArray')){ 
     $profile->whereIn('hidArray', $request->input('hidArray')); 
} 

하지만 난 생각 :

나는 아래와 같이했습니다. 이 작업을 수행 할 수있는 다른 방법이 있습니까?

+0

를가 작동하지 않습니다 ... 당신은 작동하지 않는 것을'생각 '을하게? – lagbox

+0

@lagbox 왜냐하면 나는 원하는 결과를 얻지 못했지만 raw SQL을 가지고 결과를 얻었습니다. – Gags

답변

1

나는 당신이 무엇을 이해하고 있는가에 따라 정확한 생각을 갖고 있지 않습니다. 당신은 같은 일을하려고하는

: 당신이 생각하는 '

$profile = ModelName::where('user_id',$id); 

if($request->has('hidArray')){ 
     $profile = $profile->whereIn('hidArray', $request->input('hidArray')); 
} 

$profile = $profile->get(); 
+0

저는 서술 한 문장이 WhereIn의 POST 배열을 처리하도록할까요? – Gags

+1

@Gags 그래서 내가 준 해결책을 시도해보십시오. 결국 당신 스스로 테스트해야합니다. –