I think you can do some preprocessing before you run your query.
First, you need to specify your selections to check them.
I do not know your exact database structure, but assuming you are working with selected texts, you can try the following:
$query = "SELECT * FROM projectitem WHERE (description LIKE '%$keywords%' OR item LIKE '%$keywords%')";
This is your basic request and starting it right now will be checked for keywords, but not for location.
if($keylocation != "Any location") $query .= " AND location = '$keylocation'";
This last line will add the location as an additional filter to your query. Run it and see what it does. (I'm not sure about string comparison there)
Oh yes, as a final mysqli_escape_string : be sure to run your input through the mysqli_escape_string exit mysqli_escape_string . Otherwise, you discover SQL injections.
source share