Validação de checkbox

203 views
Skip to first unread message

Hugo Fittipaldi

unread,
Jun 12, 2012, 3:43:38 PM6/12/12
to php-b...@googlegroups.com, php-br
Boa tarde pessoal,

Tenho a seguinte situação no meu formulário (feito a partir do bd):

grupo 1
          checkbox_1          checkbox_1          checkbox_1
grupo 2
          checkbox_2          checkbox_2
grupo 3
          checkbox_3          checkbox_3          checkbox_3


Cada grupo tem o mesmo nome para que somente um checkbox/grupo fosse aceito (não fiz com radio porque um grupo pode não ter nenhum item selecionado).
O meu problema é o seguinte: Como verificar se ao menos um checkbox (dos oito - nesse caso) foi selecionado.

Obrigado.
-- 
Hugo Fittipaldi
hugo.fi...@gmail.com

Mario Rodrigues

unread,
Jun 12, 2012, 4:35:37 PM6/12/12
to php-b...@googlegroups.com
Precisei um dia e usei via JS(com jquery), criei uma função

function valida() {

if(!jQuery('input[type=radio][name=  checkbox_1]:checked').val()){
alert('Faz-se necessario responder a pergunta 1.');
return false;

} if(!jQuery('input[type=radio][name= checkbox_2]:checked').val()){
alert('Faz-se necessario responder a pergunta 2.');
return false;
}

Depois no onsubmit="javascript: return valida()" do form...

acho que isso já resolve :P



--
Você está recebendo esta mensagem porque se inscreveu no grupo "php-brasil" dos Grupos do Google.
Para postar neste grupo, envie um e-mail para php-b...@googlegroups.com.
Para cancelar a inscrição nesse grupo, envie um e-mail para php-brasil+...@googlegroups.com.
Para obter mais opções, visite esse grupo em http://groups.google.com/group/php-brasil?hl=pt-BR.

Hugo Fittipaldi

unread,
Jun 12, 2012, 4:52:56 PM6/12/12
to php-b...@googlegroups.com
Oi Mario,

Eu precisava que fosse algo em php (validação server side), pois
javascript é fácil de burlar.

--
Hugo Fittipaldi
hugo.fi...@gmail.com

Em 12/06/2012 17:35, Mario Rodrigues escreveu:
> Precisei um dia e usei via JS(com jquery), criei uma função
>
> function valida() {
>
> if(!jQuery('input[type=radio][name= checkbox_1]:checked').val()){
> alert('Faz-se necessario responder a pergunta 1.');
> return false;
>
> } if(!jQuery('input[type=radio][name= checkbox_2]:checked').val()){
> alert('Faz-se necessario responder a pergunta 2.');
> return false;
> }
>
> Depois no onsubmit="javascript: return valida()" do form...
>
> acho que isso já resolve :P
>
>
>
> Em 12 de junho de 2012 16:43, Hugo Fittipaldi
> <hugo.fi...@gmail.com <mailto:hugo.fi...@gmail.com>> escreveu:
>
> Boa tarde pessoal,
>
> Tenho a seguinte situação no meu formulário (feito a partir do bd):
>
> grupo 1
> checkbox_1 checkbox_1 checkbox_1
> grupo 2
> checkbox_2 checkbox_2
> grupo 3
> checkbox_3 checkbox_3 checkbox_3
>
>
> Cada grupo tem o mesmo nome para que somente um checkbox/grupo
> fosse aceito (não fiz com radio porque um grupo pode não ter
> nenhum item selecionado).
> O meu problema é o seguinte: Como verificar se ao menos *um*
> checkbox (dos oito - nesse caso) foi selecionado.
>
> Obrigado.
>
> --
> Hugo Fittipaldi
> hugo.fi...@gmail.com <mailto:hugo.fi...@gmail.com>
>
> --
> Você está recebendo esta mensagem porque se inscreveu no grupo
> "php-brasil" dos Grupos do Google.
> Para postar neste grupo, envie um e-mail para
> php-b...@googlegroups.com <mailto:php-b...@googlegroups.com>.
> Para cancelar a inscrição nesse grupo, envie um e-mail para
> php-brasil+...@googlegroups.com
> <mailto:php-brasil%2Bunsu...@googlegroups.com>.

Dantes Fernandes

unread,
Jun 12, 2012, 5:05:43 PM6/12/12
to php-b...@googlegroups.com
se é server side, é só verificar se os nomes estão setados
cria uma condição com os nomes, utilizando OU entre eles.




   --     Você está recebendo esta mensagem porque se inscreveu no grupo
   "php-brasil" dos Grupos do Google.
   Para postar neste grupo, envie um e-mail para

   Para cancelar a inscrição nesse grupo, envie um e-mail para

   Para obter mais opções, visite esse grupo em
   http://groups.google.com/group/php-brasil?hl=pt-BR.


--
Você está recebendo esta mensagem porque se inscreveu no grupo "php-brasil" dos Grupos do Google.
Para postar neste grupo, envie um e-mail para php-b...@googlegroups.com.
Para cancelar a inscrição nesse grupo, envie um e-mail para php-brasil+unsubscribe@googlegroups.com.

Para obter mais opções, visite esse grupo em http://groups.google.com/group/php-brasil?hl=pt-BR.


--
Você está recebendo esta mensagem porque se inscreveu no grupo "php-brasil" dos Grupos do Google.
Para postar neste grupo, envie um e-mail para php-b...@googlegroups.com.
Para cancelar a inscrição nesse grupo, envie um e-mail para php-brasil+unsubscribe@googlegroups.com.

Hugo Fittipaldi

unread,
Jun 12, 2012, 9:52:20 PM6/12/12
to php-b...@googlegroups.com
Boa noite pessoal,

Consegui resolver:

Como disse, os checkboxes eram gerados a partir do bd, então fiz um loop e verifiquei a situação de cada um deles, a cada um que fosse enviado em branco eu somava 1 a uma variável ($error).
Então, se a variável gerada for igual ao número de itens do bd será exibida uma mensagem pedindo para marcar ao menos um checkbox.

Obrigado a todos que tentaram me ajudar.
--
Hugo Fittipaldi
hugo.fi...@gmail.com


   --     Você está recebendo esta mensagem porque se inscreveu no grupo
   "php-brasil" dos Grupos do Google.
   Para postar neste grupo, envie um e-mail para

   Para cancelar a inscrição nesse grupo, envie um e-mail para

   Para obter mais opções, visite esse grupo em
   http://groups.google.com/group/php-brasil?hl=pt-BR.


--
Você está recebendo esta mensagem porque se inscreveu no grupo "php-brasil" dos Grupos do Google.
Para postar neste grupo, envie um e-mail para php-b...@googlegroups.com.
Para cancelar a inscrição nesse grupo, envie um e-mail para php-brasil+...@googlegroups.com.

Para obter mais opções, visite esse grupo em http://groups.google.com/group/php-brasil?hl=pt-BR.


--
Você está recebendo esta mensagem porque se inscreveu no grupo "php-brasil" dos Grupos do Google.
Para postar neste grupo, envie um e-mail para php-b...@googlegroups.com.
Para cancelar a inscrição nesse grupo, envie um e-mail para php-brasil+...@googlegroups.com.

Para obter mais opções, visite esse grupo em http://groups.google.com/group/php-brasil?hl=pt-BR.

--
Você está recebendo esta mensagem porque se inscreveu no grupo "php-brasil" dos Grupos do Google.
Para postar neste grupo, envie um e-mail para php-b...@googlegroups.com.
Para cancelar a inscrição nesse grupo, envie um e-mail para php-brasil+...@googlegroups.com.
Reply all
Reply to author
Forward
0 new messages