haz una comparación...
Código PHP:
$query = mysql_query("SELECT hora_inicio,duracion FROM tabla ORDER BY id DESC LIMIT 1"); // Tomamos la última hora de inicio y duración
$row = mysql_fetch_assoc($query);
if( (date("h", NOW()) >= $horainicioenbd) && (date("h:i", NOW()) <= $duracion )
{
echo "No se puede... Ya existe un programa para esta hora";
}
else
{
// .........
}
Algo así sería y nosé si funciona =/... No sé como ingresas los horarios a la BD...