Ir ao conteúdo
  • Cadastre-se

Receber <input type="radio"> com PHP e MYSQL


Macunaíma

Posts recomendados

Tenho um formulário de cadastro que possui o campo do sexo, com esse código:

<input type="radio" name="sexo" id="masculino" class="cad" required/>Masculino<input type="radio" name="sexo" id="feminino" class="cad" required/>Feminino

Como recebo essa informação no meu php, já que dois inputs tem o mesmo nome? E também, como crio esse campo em minha tabela no meu BD, por também serem dúbias?

Link para o comentário
Compartilhar em outros sites

  • Moderador

@macunaima, como sabe( ou não)... quando você cria os radio button eles devem possuir o mesmo name.. para ficar no grupo.. ou seja. permitir apenas que escolha uma alternativa.

 

 Na verdade é a mesma coisa que os outros campos.

 

exemplo:

$genero = $_POST["sexo"];

e no seu banco você cria um campo do tipo varchar.

 

Só que tem um errinho no seu exemplo, está faltando o valor do campo.. então adicione o value="m"  e value="f"

 

assim o php recebe para marsculino:

se masculino o valor de $genero será: m, se feminino o valor de $genero será: f

 

Não tem mistério!

Link para o comentário
Compartilhar em outros sites

Comecei a estudar php aqui, para receber as informações dos formulários e etc. Tô estudando pelo livro do PABLO DALL'OGLIO( php programando com orientação a objetos), o que você acha? Eu ja tinha testado se as informações estavam chegando à minha tabela, e em nenhum outro input eu coloquei o value só tem mesmo o name e deu certo. porque devo colocar no type="radio" é uma particularidade? Depois de fazer o que você orientou, e add ao campo - TAMANHO/VALORES, o número 1 - não chega nem m ou f, mas sim um o, estranho.

Link para o comentário
Compartilhar em outros sites

  • Moderador

Esse livro do Pablo Dall'Oglio é bem didático. 

 

 

 

 porque devo colocar no type="radio" é uma particularidade?

 

Deves usar o tipo radio, pois ele permite que você selecione um valor em um grupo de elementos do tipo radio. Ao contrário do checkbox que permite mais de uma marcação.

Então, geralmente em formulários quando você encontra opções de escolha de gênero, é usado o radio button.  Em outros casos é utilizado o elemento select.

 

 

 

em nenhum outro input eu coloquei o value só tem mesmo o name e deu certo.

Pense. porque é usado um value?

vamos a "aula" :P

 

O atributo name do input sempre armazenará o valor inserido. Então quando se tem um input do tipo text,  e você escreve algo neste input... o name deste recebe o valor digitado. Nesse caso não precisamos declarar o atributo.. a menos que queira um valor já pré-definido.

 

E agora onde entra o radio na história?

 

Quando se tem um input do tipo radio, você deve declarar um value para ele,  que será recebido pelo name. 

Agora quando se tem dois ou mais radio buttons,  você deve declarar o name igual para todos que você queira fazer o "grupo".  

Bem.. ainda não entendi...   ok.

Vamos mais a fundo,  supondo que você tem 4 campos radio button, com o mesmo atributo name. 

testo  o exemplo. verá que nenhum radio estará marcado... neste momento o atributo name está vazio... agora para que este name receba algum valor,  você deve por um value. Agora que cada radio tem seu value específico.. No momento em que clicar em  um deles.. o name receberá o valore deste... que eventualmente será passado para o  php.

 

 

 

e add ao campo - TAMANHO/VALORES, o número 1 - não chega nem m ou f, mas sim um o, estranho.

 

O campo no banco deve ser varchar tamanho 1.  esse o que você viu, provavelmente você deve ter posto sem querer o campo como tinyint que recebe 0 ou 1 apenas.

 

 

tente aumentar o tamanho  do campo varchar para 9  e deixar os values no radio button como "masculino" e "feminino"

Link para o comentário
Compartilhar em outros sites

No caso do "type=radio", eu ja sabia o porque do radio, o que eu queria saber é: o porque de add o value no mesmo input que contém o radio, sendo que eu todos os outros input's não há value e sim name, mas eu já entendi! No campo do TAMANHO/VALORES, eu add o número 2 e tá chegando legal.

Link para o comentário
Compartilhar em outros sites

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

Sobre o Clube do Hardware

No ar desde 1996, o Clube do Hardware é uma das maiores, mais antigas e mais respeitadas comunidades sobre tecnologia do Brasil. Leia mais

Direitos autorais

Não permitimos a cópia ou reprodução do conteúdo do nosso site, fórum, newsletters e redes sociais, mesmo citando-se a fonte. Leia mais

×
×
  • Criar novo...

Ebook grátis: Aprenda a ler resistores e capacitores!

EBOOK GRÁTIS!

CLIQUE AQUI E BAIXE AGORA MESMO!