Eu consegui fazer o formulário em html, mas estou tentando fazer ele funcionar realmente com o php.
Erro do Formulário
Código do Formulário
O problema foi que deu erro nos seguintes códigos:
<?php
$nom=$_POST["txtNom"];
$log=$_POST["txtLog"];
$sen=$_POST["txtSen"];
$sex=$_POST["radSex"];
?>
e no...
echo "Sexo: $resp";
O que eu preciso fazer para funcionar tais códigos, e como eles devem ser inseridos no formulário? É desse jeito mesmo?

Dúvida Na Manipulação De Formulários Html Com O Php
Started By Biscoitin, 16/10/2009, 08:02
6 replies to this topic
#1
Posted 16/10/2009, 08:02
#2
Posted 16/10/2009, 08:44
Pelo que eu vi , você criou o formulário com a escolha de sexo e quer manipular a resposta com o php correto?
Allisson Rafael de Brito Araujo
Devagar e sempre. Se Deus é por nós, quem será contra nós?
Devagar e sempre. Se Deus é por nós, quem será contra nós?
#3
Posted 16/10/2009, 09:10
Olá,
Eu modifiquei um pouco seu código veja se funciona da forma que você queria.
Se você prefirir você pode jogar todo o código php em um arquivo separado e chamar o arquivo na action do form.
Apenas uma observação quanto ao código html: você se esqueceu de fechar algumas tags, eu recomendo o uso de labels no formulário.
Qualquer novo problema é só falar.
Eu modifiquei um pouco seu código veja se funciona da forma que você queria.
<FORM method="post" action="<?php echo $_SERVER['PHP_SELF'];?>"> <br>Nome: <input type="text" name="txtNom" size="18" maxlength="24" title="Seu nome completo"> <p>Login: <input type="text" name="txtLog" size="16" maxlength="16" title="Digite seu login(nome de usuário)"> <p>Senha: <input type="password" name="txtSen" size="12" maxlength="12" title="Digite sua senha"> <p>Sexo: <br><input type="radio" name="radSex" value="M"> Masculino <br><input type="radio" name="radSex" value="F"> Feminino <p><input type="submit" value="Enviar"> <input type="reset" value="Limpar"> </FORM> <?php if($_SERVER['REQUEST_METHOD'] == 'POST') { $Nom = empty($_POST['txtNom']) ? null : $_POST['txtNom']; $Log = empty($_POST['txtLog']) ? null : $_POST['txtLog']; $Sen = empty($_POST['txtSen']) ? null : $_POST['txtSen']; $Sex = empty($_POST['radSex']) ? null : $_POST['radSex']; echo "Nome: $Nom<br>"; echo "Login: $Log<br>"; echo "Senha: $Sen<br>"; echo "Sexo: $Sex<br>"; switch($Sex) { case 'M': $resp = 'Masculino'; break; case 'F': $resp = 'Feminino'; break; default: $resp = 'indefinido'; } echo "Sexo: $resp"; } ?>
Se você prefirir você pode jogar todo o código php em um arquivo separado e chamar o arquivo na action do form.
Apenas uma observação quanto ao código html: você se esqueceu de fechar algumas tags, eu recomendo o uso de labels no formulário.
Qualquer novo problema é só falar.
#4
Posted 16/10/2009, 14:08
Olá, vi7o
Gostei muito da sua edição.. Obrigado pela resposta
Só que ainda restou um probleminha...
Sair, saiu...
Código do Formulário(novo)
Mas o "Sexo" apareceu duas vezes...
Ex:
Nome: asd
Login: asdsd
Senha: asda
Sexo: M
Sexo: M
Como eu resolvo este problema?
Gostei muito da sua edição.. Obrigado pela resposta

Só que ainda restou um probleminha...
Sair, saiu...
Código do Formulário(novo)
Mas o "Sexo" apareceu duas vezes...
Ex:
Nome: asd
Login: asdsd
Senha: asda
Sexo: M
Sexo: M
Como eu resolvo este problema?
#5
Posted 16/10/2009, 15:37
você quer que o sexo apareça por extenso (exemplo: Masculino) ou somente a inicial (exemplo: M)?
#6
Posted 16/10/2009, 16:27
É pode ser por extenso 
Eu esqueci de deixar por extenso
Mas eu só não queria que aparecesse 2 vezes o "Sexo:"

Eu esqueci de deixar por extenso

Mas eu só não queria que aparecesse 2 vezes o "Sexo:"
#7
Posted 16/10/2009, 17:10
é só retirar a linha:
echo "Sexo: $Sex<br>";
1 user(s) are reading this topic
0 membro(s), 1 visitante(s) e 0 membros anônimo(s)