Насколько я понимаю, проблема в том, что когда вы выбираете один из вариантов заказа на странице результатов поиска, порядок работает, но на странице отображаются все записи, а не только результаты исходного поиска. .
Это происходит потому, что ваша форма "formorder" (в опубликованном файле searchresults.php) не передает ни один из параметров поиска при отправке. Когда пользователь выбирает параметр в поле выбора «Результаты заказа», отправляется форма «Форма заказа». Но эта форма предоставляет только один фрагмент данных, порядок сортировки. Таким образом, скрипт search_query.php не получает никаких данных $ _POST или $ _GET, содержащих информацию о первоначальном поиске. Это означает, что последнее условие "elseif ($ alllistings) {" в search_query.php достигнуто. Другими словами, при отправке формы «resultsorder» исходные данные поиска теряются, и ваш скрипт в search_query.php работает так, как будто у него есть запрос на отображение всех списков.
Что вам нужно сделать, это включить исходные параметры поиска в качестве скрытых тегов в форму «Результаты заказа». HTML-код для скрытых полей выглядит следующим образом:
<input type="hidden" id="searchLocation" name="searchLocation" value="California" />
Скрытые поля позволяют передавать данные в сценарии при отправке формы, при этом пользователь не видит данные, отображаемые на вашей странице. Это позволяет вашей форме «Результаты заказа» передавать текущие параметры поиска вместе с выбранным порядком сортировки. Таким образом, ваш сценарий, когда он применяет порядок сортировки, также будет иметь данные, чтобы ограничить его результаты тем, что было первоначально отображено.
Так что внутри "searchresults.php" у вас должно быть что-то вроде этого:
<form name="formorder" method="POST" [ETC]>
<select name="resultsorder" onChange="formorder.submit();">
[OPTIONS]
</select>
<input type="hidden" name="location_level1" id="location_level1"
value="<?php echo $location_level1; ?>" />
<input type="hidden" name="beds" id="beds" value="<?php echo $beds; ?>" />
</form>
И так далее, с любым количеством скрытых полей, вам необходимо включить все параметры поиска.