Validação de horário

Tenho uma agenda com várias categorias, elas não podem ser agendadas no mesmo horário, mas a validação não funciona mais, já funcionou um dia.

`$id = {id};
$start_time = {start_time};
$end_time = {end_time};
$category = {category};

$sql = “SELECT category FROM reserva_reuniao
WHERE id != $id
AND category = $category
AND end_date = $end_date
AND (start_time = $start_time
OR end_time = $start_time
OR end_time = $end_time
OR start_time = $end_time
OR ($start_time BETWEEN start_time AND end_time)
OR ($end_time BETWEEN start_time AND end_time))”;

//Executa o $sql, e retorno na variavel ret
sc_select(ret, $sql);

// captura dados
$existe = $ret->fields[‘category’];

// se existir dados, acusar erro e não salva
if (!empty($ret)) {
sc_error_message(‘Essa data e sala não estão disponiveis.’);
}`

Eu tenho um código que faz essa checagem mas é mais complexo do que esse seu sql.

Mas eu faço do lado php a verificação.

Pode me mandar a verificação?


1 Curtida

A parte da verificação eu entendi, mas não entendi onde ele puxa os campos do calendário.

Hora da agenda inicial e final, faço essa verificação dentro de um loop lendo todos registros da agenda

2 Curtidas

Percebi só agora, não estava dando certo porque a validação não está conseguindo obter os dados dos campos. Sabe o que pode ser? Nenhuma campo está sendo puxado.

Eu sempre atribuo, por exemplo: $id = {id}
É isso mesmo né?