Usamos cookies para medir audiência e melhorar sua experiência. Você pode aceitar ou recusar a qualquer momento. Veja sobre o iMasters.
Salve galera, estou quebrando a cabeça aqui, já pesquisei mas não achei nada sobre.
Eu tenho alguns dados que busco no banco de dados e mostro em um datagrid, além do CRUD que implantei eu preciso ter a opção de mudar as posições no banco. Preciso fazer isso pois elas são informações que vão para um telão. e ele segue uma ordem na mostragem dos dados.
Teria alguma forma de arrastar a linha do grid e assim ele mudar o ID do mesmo conforme a posição que ficaria e assim os outros também seriam atualizados?
Como exemplo segue uma imagem de como ele funciona. por exemplo eu movimento o ID 1 na posição abaixo do ID 3, assim o ID 2 e 3 se tornariam 1 e 2 com essa movimentação e o que era 1 se torna 3.
Agradeço qualquer ajuda que puder.
Estou desenvolvendo uma aplicação ao qual justamente tenho setores são listados na página, havendo a possibilidade do administrador controlar a ordem que esses setores vão ser exibidos.
Minha lógica para fazer o tal foi:
-
Ter uma coluna X tipo (int) na tabela justamente para armazenar a ordem de exibição.
-
Ao criar novo registro consulto a tabela e vejo quantos registros existem, assim obtenho o último número a ser exibido (isso pode ser feito através da função count), com esse valor somo com ($valor += 1) e salvo o novo registro X esse passando a ser o último.
-
Ao editar nada mais faço que consultar alternando os valores entre eles, exemplo (se o N°3 vai ser Nº2, é fazer um updade no registro cujo seja número 2 ser 3 e o 3 ser 2).
Em resumo nada mais é que alterar os valores através de update.