0

I have four input fields : Like this

$cou = Input::get('activitycou');
$type = Input::get('activitytype');
$Des = Input::get('activityDes');

I do the following :

If ($type!=null){
$query=Activity::where('id', $type)->get();   
}
If ($Des!=null){
$query=Activity::where('des_id', $Des)->get();   
}

etc However the problem is that $query is not displayed correctly can someone suggest a solution.

Cœur
  • 37,241
  • 25
  • 195
  • 267

1 Answers1

1

If you want to get the result combined with all of your options you can do the follow (with union method you can combine multiple queries):

If ($type!=null && $Des!=null && $cou!=null){
   $query1 = Activity::where('id', $type);   
   $query2 = Activity::where('des_id', $Des);
   $query3 = Activity::where('des_id', $cou);
   $allQueries = $query1->union($query2)->union($query3)->get();
 } elseif ($type!=null && $Des!=null){
   $query1 = Activity::where('id', $type);   
   $query2 = Activity::where('des_id', $Des);
   $allQueries = $query1->union($query2)->get();
 } elseif ($type!=null && $cou!=null){
   $query1 = Activity::where('id', $type);   
   $query2 = Activity::where('des_id', $cou);
   $allQueries = $query1->union($query2)->get();
 } elseif ($type!=null && $cou!=null){
   $query1 = Activity::where('id', $type);   
   $query2 = Activity::where('des_id', $Des);
   $allQueries = $query1->union($query2)->get();
 } elseif ($Des!=null && $cou!=null){
   $query1 = Activity::where('id', $cou);   
   $query2 = Activity::where('des_id', $Des);
   $allQueries = $query1->union($query2)->get();
 } elseif ($type!=null){
   $query1 = Activity::where('id', $type)->get();
 } elseif ($Des!=null){
   $query1 = Activity::where('id', $Des)->get();
 } elseif ($cou!=null){
   $query1 = Activity::where('id', $cou)->get();
 }
Panagiotis Koursaris
  • 3,794
  • 4
  • 23
  • 46