I have a query that is almost working. What is giving me troulble is the third condition $Filter. This is based on a multi-select listbox. Basically the query should return the results where "$Food", "$Place" and "$Filter" are met. "$Food" and "$Place" are single select listboxes, and "$Filter" is a multi-select. I can't use the "IN" clause, that makes an "OR" statement. I need it to be an"AND" statement.
Code:$Food = ($_POST['Food']); $Place = ($_POST['Place']); $Filter = ($_POST['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, 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' AND tblLocDet.DetailID ='$string' GROUP BY tblLocations.LocationID ORDER By tblRestaurants.RestName ASC limit 100";


Reply With Quote

Bookmarks