This is correct. Each LocationID has many details. So the tblLocDet is connected to the table tblLocations and tblDetails is connected to the table tblLocDet. The problem is now solved though thank you. Ended up using two queries.
$Food = ($POST['Food']);
$Place = ($POST['Place']);
$Filter = ($_POST['Filter']);
$total_filter = count($Filter);
$string = implode(',',$Filter);
// CONSTRUCT THE QUERY
$sql="SELECT tblRestaurants.RestName, tblRestaurants.RestPage,
CONCAT(tblLocations.StreetNumber,' ', tblLocations.Street) AS Address,
tblLocations.Phone, tblLocations.Price, tblLocations.Rating,
tblLocations.LocationPix, tblLocations.LocationID, tblDetails.DetailName,
tblLocDet.DetailID
FROM
tblLocations
INNER JOIN tblRestaurants ON tblRestaurants.RestID = tblLocations.RestID
INNER JOIN tblLocFood ON tblLocations.LocationID = tblLocFood.LocationID
INNER JOIN tblLocPlace ON tblLocPlace.LocationID = tblLocations.LocationID
INNER JOIN tblLocDet ON tblLocations.LocationID = tblLocDet.LocationID
INNER JOIN tblDetails ON tblLocDet.DetailID = tblDetails.DetailID
WHERE tblLocFood.FoodID = '$Food'
AND tblLocPlace.PlaceID = '$Place'
GROUP BY tblLocDet.LocationID
ORDER By tblRestaurants.RestName ASC
limit 100";
// RUN THE QUERY OR FAIL AND VISUALIZE WHY THERE WAS A FAILURE
$res = mysql_query($sql) or die("FAIL: $sql BECAUSE: " . mysql_error());
$LocationID = array();
while($row = mysql_fetch_object($res))
{
$LocationID[] = $row->LocationID;
//$LocationID .= $row->LocationID;
}
$LocationID = implode(',',$LocationID);
$sql="SELECT tblRestaurants.RestName, tblRestaurants.RestPage,
CONCAT(tblLocations.StreetNumber,' ', tblLocations.Street) AS Address,
tblLocations.Phone, tblLocations.Price, tblLocations.Rating,
tblLocations.LocationPix, tblLocations.LocationID, tblDetails.DetailName,
tblLocDet.DetailID
FROM
tblLocations
INNER JOIN tblRestaurants ON tblRestaurants.RestID = tblLocations.RestID
INNER JOIN tblLocDet ON tblLocations.LocationID = tblLocDet.LocationID
INNER JOIN tblDetails ON tblLocDet.DetailID = tblDetails.DetailID
WHERE tblLocDet.LocationID in($LocationID)
AND tblLocDet.DetailID in ($string)
GROUP BY tblLocDet.LocationID
HAVING COUNT(tblLocDet.DetailID) = $total_filter
ORDER By tblRestaurants.RestName ASC
limit 100";