Boa Noite Pessoal, Estou desenvolvendo uma página de auto-avaliação, na qual eu puxo as competências de uma tabela no meu banco e preciso que o usuário informe seu nivel atual e desejado para cada competência, pois preciso gravar isso em outra tabela, contendo o id da competência, o id do usuario e os niveis informados, não estou conseguindo enviar todos os valores nos combobox, até pq do jeito que eu fiz, só consta um, preciso de ajuda.
Como você está fazendo o envio? Usa ajax ou requisições normais?
Cada select precisa ter um name único. Só isso já vai resolver seu problema (tratando cada nome no servidor, é claro). Você pode criar um método que gera o nome do select com base na categoria (ex: select_atual_1, select_desej_1), o que facilita o parse dos dados no servidor.
Se estiver fazendo o envio o envio via ajax, pode pegar os dados em javascript e agrupar em um json por categoria. Por exemplo, criando um atributo data-categoria-id nos selects (ou na div que o contém) fazendo um loop nos selects do form, pegando os valores. O json ficaria algo mais ou menos assim:
{
"categorias":{
{"categoria":"1", "atual":"4", "desejavel":"8"},
{"categoria":"2", "atual":"2", "desejavel":"5"}
}
}
Abraço.
Opa, Então, estou usando requisições normais, POST, achei uma solução aqui, fiz da seguinte forma, o mesmo while que uso pra listar as categorias de acordo com o id do usuario eu usei para puxar o id de cada categoria, e assim coloquei o nome do selection como o id vindo do while, e fiz o mesmo processo no lado do servidor, para receber o POST.