学生が宴会でテーブル席を選択するためのphp/MYSQLWebサイトがあります。10席になると、テーブルは利用できなくなります。2人以上の学生が自分と最大3人のゲストのために同時に座席を予約するのを防ぐにはどうすればよいですか?2人の学生が同時に入って同じテーブルの座席を予約しようとすると、データが上書きされたり、10を超える座席が割り当てられたりする可能性があります。2番目のユーザーが自分の選択を書き込むことができるようになる前に、テーブルの座席を予約しようとする最初の人がデータベースに書き込むことができるようにする方法が必要ですか?どんな助けでもいただければ幸いです。
2 に答える
1
次のようなことをします
UPDATE Seating SET AvailableSeats = AvailableSeats - 4 WHERE TableId = 5 AND AvailableSeats = 7;
7
以前の読み物から得た場所。この更新が失敗した場合、その間に他の誰かが座席を割り当てたことがわかります。
于 2012-04-30T16:12:55.967 に答える
-1
コードを呼び出して予約を行う直前に、空室状況がまだ存在するかどうかを確認します。
if (functionToCheckAvailability(number_of_seats)) {
bookSeats(number_of_seats);
}
于 2012-04-30T16:50:42.803 に答える