по поводу этого вопроса..
Временной интервал бронирования PHP
Я пробовал GROUP BY, id_timeslot все еще не работал, так как он показывает только забронированный временной интервал, недоступный
я попробовал это решение, но выдает ошибку и не совсем понимаю, как использовать «coelence»
table timeslot (id_timeslot integer);
table doctor (id_doctor integer);
table bookslot (id_bookslot, id_doctor, id_timeslot integer);
insert into doctor (id_doctor)
values (1 = doc_A), (2 = doc_B), (3 = doc_C);
insert into TimeSlot (id_timeslot)
values (1 = 10:00:00), (2 = 10:15:00), (3 = 10:30:00), (4 = 10:45:00);
insert into bookslot (id_doctor,id_timeslot)
values (1,1), (1,5), (2,1), (2,4), (3,1);
Присоединиться к таблице mysql
$q = $mysqli->query("SELECT * FROM bookslot
RIGHT JOIN timeslot ON bookslot.id_timeslot = timeslot.id_timeslot
LEFT JOIN doctor ON bookslot.id_doctor = doctor.id_doctor ");
эхо-результат и проверка, соответствует ли он сегодняшней дате или установлен
while($r = $q->fetch_array(MYSQLI_ASSOC)) :
echo '<tr>';
echo '<td align="center">' . $r['times'] . '</td>';
if($r['booked_date'] == date('Y-m-d') && $r['id_doctor'] == 1):
echo '<td><a href="#available" class="booked">booked</a></td>';
else :
echo '<td><a href="#" class="available">available</a></td>';
endif;
if($r['booked_date'] == date('Y-m-d') && $r['id_doctor'] == 2):
echo '<td><a href="#available" class="booked">booked</a></td>';
else :
echo '<td><a href="#" class="available">available</a></td>';
endif;
if($r['booked_date'] == date('Y-m-d') && $r['id_doctor'] == 3):
echo '<td><a href="#available" class="booked">booked</a></td>';
else :
echo '<td><a href="#" class="available">available</a></td>';
endif;
echo '</tr>';
endwhile;
результат с веб-страницы
и я хочу, чтобы результат выглядел так:
id_timeslot doc_A doc_B doc_C
----------------------------------------------
1 booked booked booked
2 available available available
3 available available available
4 available booked available
5 booked available available
Любое другое решение, пожалуйста!