PHP と MySQL を利用して、このサイトを複製 (または非常に類似) した練習用サイトをまとめています。現在、私の検索可能なフィールドは次のとおりです: 家賃 (最小-最大)、賃貸の種類 (任意、アパート、一軒家)、寝室の数 (任意、1+、2+、3+、4+)
これまでのところ、コードをまとめるのに問題はありません。スケーリングの問題が心配で、ベスト プラクティスと見なされるものを知りたいだけです。また、私がリンクしたサイト (eBay にも非常によく似たものがあります) にある「サイドバー フィルター検索」を複製する方法についてのアドバイスは素晴らしいでしょう。
ここで分岐点にぶつかりました。MySQL クエリで各フィールド フィルターを個別に処理するか、それともテーブル内のすべての項目を呼び出してから PHP でフィルター処理するかです。
$sql = "SELECT * FROM properties ";
$properties = Property::find_by_sql($sql);
$matched_properties = array();
foreach($properties as $property):
if ($min_rent <= $property->rent && $property->rent <= $max_rent) {
$matched_properties[] = $property;
}
endforeach;
上記のコードは、MySQL の「プロパティ」テーブルからすべてを取得し、プロパティ クラス (基本 CRUD クラス) 配列を作成します。
ごちゃ混ぜに聞こえるかもしれませんが、私の主な質問は、このサイトまたは eBay.comのようなフィルタリングされた検索を複製するにはどうすればよいですか? そして、私は正しい道を進んでいますか?
ありがとうございました