予約時間のバリデーション

予約希望が入った場合は、whereでその日の担当者の予約済時間帯を参照する。
希望開始時間が予約済開始時間~予約済終了時間の間、もしくは、
希望終了時間が予約済開始時間~予約済終了時間の間の場合は、予約できないようにする。

    $validation = 0;
    $sql = "select * from masters where day = '".$day."' and charge = '".$charge."'";
	$stmt = $dbh->query($sql);
	 
	$result = $stmt->fetchAll(PDO::FETCH_ASSOC);
 
	foreach($result as $value){
		if($time1 >= $value["time1"] and $time1 <= $value&#91;"time2"&#93;){
			$validation = 1;
		} elseif($time2 >= $value["time1"] and $time2 <= $value&#91;"time2"&#93;){
			$validation = 1;
		}
	}
&#91;/php&#93;


viewはif, elseifで表示を切り分ける。
&#91;php&#93;
<?php if($validation == 0): ?>
<?php elseif($validation == 1): ?>
<?php endif; ?>

予約済み時間との間を30分あける場合などは、$time1 >= $value[“time1”] and $time1 <= $value["time2"]を変更すればよい。 あれ? 思ってたより直ぐできた?

次は予約一覧の表示ですね。