Laravel Search Code
Copy Below Code
View As A Text File
Show Text Only
Show API
Edit Code
$sendResult=array('project_id'=>'', 'email'=>'','from_date'=>'', 'to_date'=>'','phone'=>'','contractor_id'=>'');
if(isset($_GET['project_id']) || isset($_GET['email']) || isset($_GET['from_date']) || isset($_GET['to_date']) || isset($_GET['phone']) || isset($_GET['contractor_id']))
{
$searchArr=array();
$serachLink='';
foreach ($sendResult as $key => $value)
{
if(isset($_GET[$key]))
{
$sendResult[$key]=trim($_GET[$key]);
$serachLink.=$key.'='.trim($_GET[$key]).'&';
}
else
{
$serachLink.=$key.'='.$value.'&';
}
}
$from=Carbon::parse($sendResult['from_date'])
->startOfDay()->toDateTimeString();
$to=Carbon::parse($sendResult['to_date'])
->endOfDay()->toDateTimeString();
$searchArr['id'] = $sendResult['project_id'];
$searchArr['user_email'] = $sendResult['email'];
$searchArr['user_number'] = $sendResult['phone'];
$searchArr['contractor_id'] = $sendResult['contractor_id'];
foreach ($searchArr as $key => $value)
{
if($value=='' || $value=='0')
{
unset($searchArr[$key]);
}
}
$dataQ = Leads::where($searchArr);
if(isset($_GET['from_date']) && $_GET['from_date'] != "")
{
$dataQ->whereBetween('created_at',[$from,$to]);
}
$dataQ
->with('user')
->orderBy('id','desc');
$result=$dataQ->paginate(10);
$serachLink=rtrim($serachLink,'&');
$result->setPath('?'.$serachLink);
}
else
{
$result = Leads::with('service')->with('user')->with('contractor')->orderBy('id','DESC')->paginate(10);
}