Usamos cookies para medir audiência e melhorar sua experiência. Você pode aceitar ou recusar a qualquer momento. Veja sobre o iMasters.
Olá Bom dia!
Estou desenvolvendo um sistema de agendamento que precisa restringir os horários que já foram marcados.
Para isso, eu faço a consulta ao banco e depois disso mostro os resultados, já deixando inacessível os horários.
$contagem = "SELECT * FROM matricula_2016 WHERE horaEnt = '8h às 9h' AND dataEnt = '$data' AND orientadora = '$ori' ";
$contando = mysql_query($contagem);
$total = mysql_num_rows($contando);
$hor10 = "class='h_aceso'";
$res1 = "";
if ($total >= $linhas) {
$hor10 = "class='h_apagado' disabled='disabled'";
$res1 = " - indisponível!";
}
Eu faço uma consulta para cada option do meu select:
<select id="horaEnt" name="horario_cand" tabindex="3" >
<option value=""></option>
<optgroup label="Manhã">
<option <?php echo $hor10; ?> value="8h às 9h">8h às 9h<?php echo $res1; ?> </option>
<option <?php echo $hor11; ?> value="9h às 10h">9h às 10h<?php echo $res2; ?> </option>
<option <?php echo $hor12; ?> value="10h às 11h">10h às 11h<?php echo $res3; ?></option>
<option <?php echo $hor13; ?> value="11h às 12h">11h às 12h<?php echo $res4; ?></option>
</optgroup>
<optgroup label="Tarde">
<option <?php echo $hor14; ?> value="14h às 15h">14h às 15h<?php echo $res5; ?></option>
<option <?php echo $hor15; ?> value="15h às 16h">15h às 16h<?php echo $res6; ?></option>
<option <?php echo $hor16; ?> value="16h às 17h">16h às 17h<?php echo $res7; ?></option>
</optgroup>
</select>
O meu problema é como evitar que haja duas consultas "quase" ao mesmo tempo a ponto de dois usuários marcarem o mesmo horário.
Como a consulta é feita antes, dependendo da proximidade do horário de acesso os dois podem receber o mesmo resultado.
Abraço a todos!
Carregando comentários...