Sistema de agendamento com datepicker
Boa tarde devs !
Estou tentando criar um sistema de agendamento com datas e horários disponíveis para a data selecionada.
Por exemplo, quero criar um datepicker jquery ou bootstrap tanto faz, ao selecionar o datepicker preciso de um select para popular os horários disponíveis para o dia selecionado no datepicker.
Alguém pode me dar uma ajuda...
Estou tentando criar um sistema de agendamento com datas e horários disponíveis para a data selecionada.
Por exemplo, quero criar um datepicker jquery ou bootstrap tanto faz, ao selecionar o datepicker preciso de um select para popular os horários disponíveis para o dia selecionado no datepicker.
Alguém pode me dar uma ajuda...
Vinicius
Curtidas 0
Respostas
Gxf
04/12/2020
O ideal seria vc especificar exatamente qual sua dúvida, para lhe ajudarem! Abs.
GOSTEI 0
Vinicius
04/12/2020
O ideal seria vc especificar exatamente qual sua dúvida, para lhe ajudarem! Abs.
Concordo, só que estou perdido...
Já consultei alguns sistemas que queria fazer igual, porém já procurei bastante algum exemplo de código e não consigo achar.
Seria parecido com um sistema de agenda médica...porém no meu caso só preciso de dias e horários disponíveis para agendamento.
Preciso de um datepicker que ao selecionar abre um select com os horários disponíveis para o dia selecionado.
Tentei fazer a mesma lógica de select entre estados e cidades, ao selecionar um estado o select popula a cidade do estado selecionado.
Minha dúvida é que não estou conseguindo criar uma lógica para marcar o horário como ocupado.
GOSTEI 0
Jady
04/12/2020
O ideal seria vc especificar exatamente qual sua dúvida, para lhe ajudarem! Abs.
Concordo, só que estou perdido...
Já consultei alguns sistemas que queria fazer igual, porém já procurei bastante algum exemplo de código e não consigo achar.
Seria parecido com um sistema de agenda médica...porém no meu caso só preciso de dias e horários disponíveis para agendamento.
Preciso de um datepicker que ao selecionar abre um select com os horários disponíveis para o dia selecionado.
Tentei fazer a mesma lógica de select entre estados e cidades, ao selecionar um estado o select popula a cidade do estado selecionado.
Minha dúvida é que não estou conseguindo criar uma lógica para marcar o horário como ocupado.
Olá, você conseguiu resolver? Estou com a mesma dificuldade.
GOSTEI 0
Vinicius
04/12/2020
Bom dia à todos,
Minha dúvida é a seguinte:
Quero ter disponíveis dias de agendamento e horário para o dia selecionado, já tentei usar a mesma lógica de relação entre estados e cidades, que ao selecionar um estado o select popula a cidade correspondente ao estado. No meu caso seria ao selecionar um dia o select popula o horário para o dia selecionado, segue meus códigos que estou tentando.
Index.php:
Pessoal Não postei o código completo por te tratar de ser complexo... A parte que não estou conseguindo é essa.
Minha dúvida é a seguinte:
Quero ter disponíveis dias de agendamento e horário para o dia selecionado, já tentei usar a mesma lógica de relação entre estados e cidades, que ao selecionar um estado o select popula a cidade correspondente ao estado. No meu caso seria ao selecionar um dia o select popula o horário para o dia selecionado, segue meus códigos que estou tentando.
Index.php:
<label class="label"> <span>Selecione um dia:</span> <select name="appointment_schedule_id" class="horarios"> <option selected disabled value="">Nenhum Selecionado</option> <?php $read->readFull("SELECT * FROM schedule s WHERE s.schedule_status IS NULL AND s.schedule_tstamp >= CURRENT_TIMESTAMP GROUP BY s.hora_disp ORDER BY s.schedule_tstamp ASC"); $schedules = ($read->getResult() ? $read->getResult() : null); if (!empty($schedules)) { foreach ($schedules as $schedule) { $schedule = (object) $schedule; echo "<option value='{$schedule->schedule_id}'>" . date('d/m/Y', strtotime($schedule->schedule_tstamp)) . "</option>"; } } ?> </select> </label> <div> <select class="hora" style="display: none;"> </select> </div> <p> <button type="submit" class="btn">Marcar Agendamento!</button> </p> </form> <script> $(".horarios").on("change", function() { var idHora = $(".horarios").val(); $.ajax({ url: 'busca_hora.php', type: 'POST', data:{id:idHora}, beforeSend: function() { $(".hora").css({'display': 'block'}); $(".hora").html("Carregando..."); }, success: function(data) { $(".hora").css({'display': 'block'}); $(".hora").html(data); }, error: function(data) { $(".hora").css({'display': 'block'}); $(".hora").html("Houve um erro"); } }); }); </script>
<?php require_once 'conexao.php'; $pega_hora = $conexao->prepare("SELECT * FROM horas_disp WHERE schedule_id='".$_POST['id']."' /*AND s.schedule_time >= CURRENT_TIMESTAMP */ "); $pega_hora->execute(); $fetchALL = $pega_hora->fetchALL(); foreach ($fetchALL as $horas_disp) { echo '<option>'.$horas_disp['horario_disp'].'</option>'; }
CREATE TABLE `horas_disp` ( `id` int(11) NOT NULL, `horario_disp` datetime NOT NULL, `schedule_id` int(11) UNSIGNED NOT NULL ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4; -- -- Extraindo dados da tabela `horas_disp` -- INSERT INTO `horas_disp` (`id`, `horario_disp`, `schedule_id`) VALUES (1, '2021-02-15 09:30:00', 1), (2, '2021-02-15 10:30:00', 1), (3, '2021-02-15 11:30:00', 1), (4, '2021-02-16 09:30:00', 4); -- -------------------------------------------------------- -- -- Estrutura da tabela `schedule` -- CREATE TABLE `schedule` ( `schedule_id` int(11) UNSIGNED NOT NULL, `hora_disp` int(11) NOT NULL, `schedule_tstamp` timestamp NULL DEFAULT NULL, `schedule_status` int(11) DEFAULT NULL ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4; -- -- Extraindo dados da tabela `schedule` -- INSERT INTO `schedule` (`schedule_id`, `hora_disp`, `schedule_tstamp`, `schedule_status`) VALUES (1, 1, '2021-02-24 12:30:00', NULL), (2, 1, '2021-02-15 13:30:00', NULL), (3, 1, '2021-02-15 14:30:00', NULL), (4, 2, '2021-02-16 12:30:00', NULL), (5, 2, '2021-02-16 13:30:00', NULL), (6, 0, '2021-02-25 12:30:00', NULL); ALTER TABLE `horas_disp` ADD PRIMARY KEY (`id`,`schedule_id`), ADD KEY `fk_horas_disp_schedule_idx` (`schedule_id`); -- Ãndices para tabela `schedule` -- ALTER TABLE `schedule` ADD PRIMARY KEY (`schedule_id`); ALTER TABLE `horas_disp` ADD CONSTRAINT `fk_horas_disp_schedule` FOREIGN KEY (`schedule_id`) REFERENCES `schedule` (`schedule_id`) ON DELETE NO ACTION ON UPDATE NO ACTION; COMMIT;
Pessoal Não postei o código completo por te tratar de ser complexo... A parte que não estou conseguindo é essa.
GOSTEI 0