Ir para conteúdo
Fórum Script Brasil
  • 0

pegar linha do checkbox selecionada no php mesmo formulario


jorgekc

Pergunta

olá! Sou novo aqui e tenho um problema. Tenho um formulario que le dados de um BD e joga em linhas com checkbox para ser selecionado apenas um por vez pelo usuario. Acontece que funcionava com navegadores que não foram atualizados obedecendo alteracoes do html5. não estou conseguindo pegar a linha selecionada, apos submeter o formulario chamando o mesmo formulario já processado e sem a linha que foi selecionada. não sei se expliquei o que queria. O formulario tem um loop que le o BD e lista as linhas a ser marcada para processar. Ao ser submetido, chama o mesmo formulario que já vem com as linhas novas que não foram selecionadas. Posto aqui a linha da funcao e do loop.

<script>
function verificar( nome, quantidade )
{
    itens = 0;
    var oElementos = d.getElementsByTagName('input');
    for( var i = 0; i < oElementos.length; i++ )
    {
        if( oElementos[ i ].type == 'checkbox' )
        {
           if( oElementos[ i ].checked )
           {
              itens++;
           }
        }
    }
    if ( itens > 1 )
    {
       alert ( " Voce marcou " + itens + " linhas, só marque uma por vez por favor." );
    }
    $( 'total' ).innerHTML = itens;
    return(ind);
}
</script>


loop para mostrar as linhas que poderao ser selecionadas uma a uma.

                       <input name="nid[<?echo $m;?>]" type="checkbox" id="id" value="<?echo $m;?>" onclick="verificar('id', <?echo $tot;?>, <?echo $seq_con[$v];?>)" /></font></tr>

 

Será que com estas informacoes, alguém poderia me ajudar?

Obrigado a alguém que possa a ajudar-me,

 

Link para o comentário
Compartilhar em outros sites

3 respostass a esta questão

Posts Recomendados

  • 0

É melhor deixar todos com o mesmo name. Apenas adicione "[]" para forçar o PHP a tratar o valor como array. E não use o mesmo ID para mais de um elemento HTML. 

<input type="checkbox" name="valores[]" value="1">
<input type="checkbox" name="valores[]" value="2">

Assim, $_POST['valores'] será um array com todos os valores selecionados

 

Link para o comentário
Compartilhar em outros sites

  • 0
1 hora atrás, Beraldo disse:

É melhor deixar todos com o mesmo name. Apenas adicione "[]" para forçar o PHP a tratar o valor como array. E não use o mesmo ID para mais de um elemento HTML. 


<input type="checkbox" name="valores[]" value="1">
<input type="checkbox" name="valores[]" value="2">

Assim, $_POST['valores'] será um array com todos os valores selecionados

 

Ok. vou testar e posto aqui o resultado. Muito obrigado pelo seu retorno.

esqueci de dizer que ao submeter o formulario, este volta para a mesma pagina, eliminando a checkbox que fora selecionada. então. não consigo, depois de submeter o formulario, pegar a box que foi selecionada para depois tratar via php.

 

alterei como voce sugeriu para :

                       <input name="nid[]" type="checkbox" id="nid" value="<?echo $m;?>" onclick="verificar('nid', <?echo $tot;?>, <?echo $seq_con[$v];?>)" /></font></tr>

 

estou tentando pegar assim:

   $_checkbox = $_POST['nid'];
   foreach($_checkbox as $_valor)
   {
      echo $_valor; die();
   }

so para ver se foi pego a box selecionada, mas ate agora nada aconteceu. não esta pegando.

Link para o comentário
Compartilhar em outros sites

  • 0

Beraldo. Depois de 4 dias fuçando igual a louco, consegui identificar o meu problema. O input tinha que ficar dentro de um form. Eu tinha colocado o form somente para o submit. Sou programador de Cobol e javascript fica muito alem das minhas condicoes de programador. O php ate que entendo bem, mas javascript, esta dificil mesmo. Mas vou caminhando a passos de tartaruga. Muito obrigado pela sua intervencao e ajudou muito.

Tenho já 61 anos e minha cabeca já não aguenta tanto calor. ufaaaaaaaaaa consegui.

Link para o comentário
Compartilhar em outros sites

Participe da discussão

Você pode postar agora e se registrar depois. Se você já tem uma conta, acesse agora para postar com sua conta.

Visitante
Responder esta pergunta...

×   Você colou conteúdo com formatação.   Remover formatação

  Apenas 75 emoticons são permitidos.

×   Seu link foi incorporado automaticamente.   Exibir como um link em vez disso

×   Seu conteúdo anterior foi restaurado.   Limpar Editor

×   Você não pode colar imagens diretamente. Carregar ou inserir imagens do URL.



  • Estatísticas dos Fóruns

    • Tópicos
      152,1k
    • Posts
      651,8k
×
×
  • Criar Novo...