だから私は車の予約ウェブサイトを構築しています。そして、このような車のテーブルがあります:
車
- 車ID
- 車のモデル
- カーメイク
- 登録
また、次のような予約テーブルもあります。
予約:
- 予約ID
- 車ID
- 開始日
- 終了日
したがって、ユーザーが車を予約したい日付を入力すると、予約テーブルにクエリを実行します。
日付が既に予約テーブルにある場合は、その車の ID を取得し、ユーザーが表示されるリストからその車を除外して、予約できないようにします。
私の問題は、データベースに同じモードとメーカーの車が複数あるが、CarID と登録が異なることです。
また、ユーザーに特定のタイプの車が 1 台だけ表示されるように、モデルごとに車をグループ化します。
$carstring = mysql_query("SELECT * FROM cars {$statement} AND deleted = 'no'" GROUP BY CarModel);
$getcars = $carstring;
while($searchcars = mysql_fetch_array($getcars)) {
$checkreservations = mysql_query("SELECT * FROM reservations WHERE startDate = '".$sqlcoldate."' and carID = '".$searchcars['carID']."'");
$thiscar_num_rows = mysql_num_rows($checkreservations);
すぐにわかるように、予約テーブルにどの車が登録されているかがわかります。num_rows
ただし、私がやりたいのは、既に使用されている車を見つけて、すべての車をユーザーに表示するクエリループCarID
から除外し、モデルごとにグループ化することであるため、これは間違った方法だと思います。$getcars
誰かがこれを行う方法、またはそれを行うためのより良い方法を教えてもらえますか?