0

https://tulionsbloodbank.org/api/donors?blood_group=AB+&address=Pepsi cola

get route:

Route::get('/donors','Api\DonorController@filter');

Controller:

public function filter(Request $request)
{
    //$donorQuery = Donor::query();
    $donorQuery = Donor::where('status', 1);
  
    if ($request->has('address')) {
     $donorQuery->where('address', 'LIKE', '%' . $request->address . '%');
    }
   if ($request->has('blood_group')) {
    $donorQuery->where('blood_group', $request->blood_group);
   }
    $donorList = $donorQuery->get();
    $TotaldonorList = Donor::where('status', 1)->count();
  
  
    $donorList = $donorQuery->get();
    $data['donors']=$donorList;
    $data['message']='Donors List';
    $data['total'] = Donor::count();
    return response()->json($data, 200);

    return response()->json($donorList, 200);

}

My query can search address filed but unable to get blood group data due to special characters AB+

tripleee
  • 175,061
  • 34
  • 275
  • 318

1 Answers1

0

You should encode blood_group query param on client side in javascript like

encodeURIComponent(blood_group);

Then decode it on server side (in Controller) like

urldecode($request->blood_group);
Marcin Orlowski
  • 72,056
  • 11
  • 123
  • 141
Vüsal Hüseynli
  • 889
  • 1
  • 4
  • 16