Como fazer o INSERT de campos HTML gerados automaticamente

Tenho um projeto de grade de horário num site. De Segunda a Sábado. Com seus respectivos horários e professores.

index.html

<form name="formHorarioAulas" method="post" action="geraAulas.php">
    <label for="diaSemana">Selecione o dia da semana:</label> <br />
        <select name="diaSemana" id="diaSemana" required>
            <option value="">[selecione]</option>
            <option value="seg">Segunda-feira</option>
            <option value="ter">Terça-feira</option>
            <option value="qua">Quarta-feira</option>
            <option value="qui">Quinta-feira</option>
            <option value="sex">Sexta-feira</option>
            <option value="sab">Sábado</option>
    	</select>
            
            <br />
            <br />
            
    <label for="numAulas">Selecione a quantidade de aulas:</label> <br />
    <input type="number" name="numAulas" id="numAulas" min="1" max="10" required>
    
    <br />
    <br />
    <input type="submit" name="btnGerar" value="Iniciar..." />
</form>

O número em numAulas determina o máximo do meu FOR, lá no geraAulas.php. Tudo funcionando:

geraAulas.php

for ($i=1 ; $i<=$numAulas ; $i++){
    $pdo = new PDO("mysql:host=127.0.0.1;dbname=nomedobanco","root","root");
    $sql = $pdo->query("SELECT * FROM professores ORDER BY nome");

    echo "<h3>".$i."ª Aula</h3>";
    echo "<label>Hora de Início: </label> <input type='time' name='txtHoraI' required/> <br />";
    echo "<label>Hora de Término: </label> <input type='time' name='txtHoraF' required/> <br />";
    echo "<label>Digite a modalidade: </label> <input type='text' name='txtModalidade' required/> <br />";
    echo "<label>Professor: </label>";
    echo "<select name='txtProfessor' required> 
              <option value=''>[selecione]</option>";
              while ($rs = $sql->fetch(PDO::FETCH_ASSOC)) {
                  echo "<option value='{$rs['id']}'> {$rs['nome']} </option>";
              }
    echo "</select> <br />";
    echo "<label>Nível: ";
    echo "<select name='txtNivel' required>
              <option value=''>[selecione]</option>
              <option value='adaptacao'>Adaptação</option>
              <option value='iniciante'>Iniciante</option>
              <option value='intermediario'>Intermediário</option>
              <option value='avancado'>Avançado</option>
          </select>";
    echo "<hr>";
}

Tudo funcionando. Agora nasce o problema: se o usuário escolhe 2 ou mais número de aulas no dia da semana, como faço para obter os campos HTML que foram gerados automaticamente com o mesmo nome?

Quando faço o INSERT no MySQL, ele insere apenas o conteúdo da primeira aula. Alguém pode me ajudar?