私は 2 つのテーブルを持っています。1 つは 1 日に利用可能なすべての労働時間を含み、もう 1 つのテーブルには誰かが利用可能であると述べた時間を含みます。フォーム フィールドを作成するときに、その日時<select>
の DB に既にある時間を自動選択したいと考えています。tutor_id
tutor_ availability
hours_list tutor_availability
---------------------- --------------------------------------
24hour | 12hour tutor_id | day | start_time | end_time
---------------------- --------------------------------------
1000 | 10:00am 27 | mon | 1000 | 1100
---------------------- --------------------------------------
1030 | 10:30am
----------------------
1100 | 11:00am
----------------------
1130 | 11:30am
----------------------
//the list goes on
を使用していくつかのクエリを試しましLeft Join
たが、ほとんど成功しませんでした。私は2つの別々のクエリを実行できると考えていましたが、次の結果を反復しながら正しいオプションフィールドを選択する方法に問題が発生していますhours_list
:
$hours = Select * FROM hours_list;
//next query
$available = Select day, start_time, end_time
FROM tutor_availability WHERE tutorid = '27';
foreach ($hours as $option) {
echo '<option value="' . $option['24hour'] . '"';
if ($available['start_time'] == $option['24hours'] && $available['day'] == 'mon') {
echo 'selected'; }
//rest here
ただし、正しい結果を得るために、2 つの SQL の結果を組み合わせて反復処理する方法がわかりません。