[ Поиск ] - [ Пользователи ] - [ Календарь ]
Полная Версия: Циклы
юрьич
Всем привет. Есть таблица html. Верхняя строка дни недели. Первый столбец часы приёма. Строки будут заполняться занято или свободно. В статике всё работает. То есть я задаю время и число и соответствующее поле становится "Занято".
Теперь получаю массив из базы Mysql из которого мне нужно время. После перебора имею такой массив
Array ( [0] => 13:30 [1] => 14:30 [2] => 12:30 )

Цикл для столбца часов приёма в таблице html такой
			while($start_1 < $end_1) {
$t = strtotime("+30 minute", $start_1);
$tm1[] = date("H:i", $start_1);
$start_1 = $t;
}

Значений в нём 8.
Теперь мне нужно получить массив сравнения часов приёма с массивом времени. Что то типа
for($i=0;$i<count($tm1);$i++){
$free_1= ($tm1[$i] == $time[$i]) ? 1 : 0;
}

Но так сравнивается только первые три значения из восьми.
Если делаю двойной цикл, то count($free_1)=24, а в таблице html всего восемь.
Есть решение данной проблемы или нужно таблицу html как то переделывать?
юрьич
С этим разобрался.
юрьич
Теперь проблема встала в сравнении данных для определения совпадения числа в таблице-числа в массиве - даты в таблице и даты в массиве. Есть спецы по циклам)?
sergeiss
Цитата (юрьич @ 12.05.2020 - 12:10)
Есть спецы по циклам)?

Тут таких каждый первый smile.gif Ты более конкретно спрашивай. И помни, что правильно поставленная задача - это уже половина ответа.
В чем именно проблема сравнить данные?

Цитата (юрьич @ 11.05.2020 - 11:23)
Есть решение данной проблемы или нужно таблицу html как то переделывать?

Работать надо не с таблицей HTML, а с чистыми данными! Потом уже выведешь, когда нужно.

_____________
* Хэлп по PHP
* Описалово по JavaScript
* Хэлп и СУБД для PostgreSQL

* Обучаю PHP, JS, вёрстке. Интерактивно и качественно. За разумные деньги.

* "накапливаю умение телепатии" (С) и "гуглю за ваш счет" (С)

user posted image
юрьич
Это продолжение первого поста. Повторюсь,что бы зря не крутить страницу).
Еть цикл для вывода в таблице дней и чисел недели. Верхняя строка в таблице.
			for($i=0;$i<7;$i++){
$dat_format = date ("d",time() - ( -$i + date("N")-$j) * 24*60*60);
$dat_f[] = date ("Y-m-d",time() - ( -$i + date("N")-$j) * 24*60*60);// ЧИСЛА
$w_date[] = (int)$dat_format .'-ое ';
[
b]$w_weeks[][/b] = $w_week[$i].' | '.$w_date[$i]; // Дни недели
}

Есть цикл для вывода времени приёма .Первый столбец в таблице.
			$start = strtotime('09:00');
$end = strtotime('18:00');
while($start < $end) {
$t = strtotime("+30 minute", $start);
$table_time[] = date("H:i", $start); // Время
$start = $t;
}

И есть массив с базы,в котором я получаю дату и время уже занятых часов.
Array ( [0] => Array ( [id] => 56  [date] => 2020-05-11 [time] => Array ( [0] => 2:13:30 [1] => 1:14:30 ) )
[
1] => Array ( [id] => 58 [date] => 2020-05-12 [time] => Array ( [0] => 1:12:30 ) )

После преобразования в
$date[] = Array([0]=>2020-05-11 [1]=>2020-05-12);
$time[] = Array([0]=>12:30 [1]=>13:30 [2]=>14:30);


не могу сделать, проверку, что бы Если дата в таблице и дата в массиве, а так же числа в таблице и массиве совпадают, то в ячейке 1, если не ,то 0
Быстрый ответ:

 Графические смайлики |  Показывать подпись
Здесь расположена полная версия этой страницы.
Invision Power Board © 2001-2024 Invision Power Services, Inc.