terça-feira, 9 de outubro de 2012

Aprenda como capturar dados inseridos no formulário HTML com PHP


Vim aqui contaminar vocês com um pouco de PHP.


Inicialmente vamos criar um formulário em html:


<form name="form" method="post" action="validaform.php">

<fieldset>
<legend>Mensagem</legend>
      <p><label for="nome">Seu nome:</label>
<input name="nome" id="nome" type="text"></p>

<p><label for="email">Seu e-mail:</label>
<input name="email" id="email" type="text"></p>

<p><label for="telefone">Seu telefone:</label>
<input name="telefone" id="telefone" type="text"></p>

<input type="submit" value="Enviar"> <input type="reset" value="Limpar">

</fieldset>
</form>

Podemos observar que na tag form temos o "method" que determina de que maneira os dados serão repassados para o arquivo o qual o "action" está indicando. Em PHP há duas maneiras de repassar os dados, uma delas se chama "GET", que transfere as informações diretamente por meio da URL, e a outra se chama "POST", e sua maneira de transferência é feita pela comparação do atributo "name" da tag "input". A seguir irei mostrar a utilização do método "POST", lembrando que no formulário é necessário informar que tipo de método você irá utilizar.

Agora cria-se o arquivo PHP, no exemplo se chama "validaform.php", e em seguida vem a codificação:


$nome=$_POST["nome"];
$email=$_POST["email"];
$telefone=$_POST["telefone"];

Procure sempre colocar o mesmo nome da variável igual ao "name" do formulário, isso evita possíveis erros. Em seguida vamos conferir se realmente conseguimos capturar os dados do formulário:

echo $nome."<br>";
echo $email."<br>";
echo $telefone;

Se você conseguiu visualizar os dados ao clicar enviar do formulário, parabéns!!! tudo ocorreu de maneira esperada. Se tiver alguma dúvida coloque nos comentários. Até a próxima!!!

8 comentários:

  1. cara parabéns pelo tutorial, gostaria de saber se tem como entrar em contato com vc pois não achei aqui formulario de contato ou algo parecido... aguardo...
    se possivel
    meu email é
    jesseaf_20@hotmail.com
    ou
    livresads2012@hotmail.com

    preciso muito entrar em contato com vc creio que vc possa me ajudar...
    desde ja Obrigado.

    ResponderExcluir
    Respostas
    1. Obrigado Jessé, vou te adicionar no email para esclarecer sua dúvida, caso queira perguntar algo adicione o GeeksField no facebook: http://www.facebook.com/geeks.field.9?ref=tn_tnmn ou http://www.facebook.com/GeeksField abraço.

      Excluir
  2. pOSSUO UMA PAGINA PARECIDA SÓ QUE PRECISO RECONHECER O FORMULARIO NUMA OUTRA PAGINA PARA FAZER UM CALCULO ALEM DE TER FEITO NA SEGUNDA COMO FAÇO

    ResponderExcluir
    Respostas
    1. Qual cálculo irá fazer? Para manipular os dados de outro formulário de outra página basta calcular com as variáveis, como no exemplo:

      Código na página em que será enviado os dados do formulário:

      $nome=$_POST["nome"];
      $email=$_POST["email"];
      $telefone=$_POST["telefone"];

      Exemplo de cálculo:

      $numero1=$_["numero1"];
      $numero2=$_["numero2"];

      $calculo=$numero1+$numero2;

      Qualquer coisa, adicione no facebook. abraço =D

      Excluir
  3. Ola, Não consigo perceber como se faz.

    O meu form é este, aqui em baixo. Não consigo saber como se transforma o form para que o mesmo formulário que está na primeira página apareça já com os dados preenchidos na 2ª e 3ª páginas.

    Alguém me pode ajudar?

    http://www.thankyougame.idn.pt/iframe-jogar1-3.htm
    http://www.thankyougame.idn.pt/iframe-jogar2-3.htm
    http://www.thankyougame.idn.pt/iframe-jogar3-3.htm

    ResponderExcluir
    Respostas
    1. Olá Miguel,

      A seguir irei demostrar um exemplo de código que pode lhe ajudar:

      form method="POST" action="teste2.php"
      input name="texto" type="text"
      input type="submit" value="Enviar"
      /form

      Nesta primeira página, o usuário irá preencher um campo do formulário e irá clicar enviar, em seguida ele será redirecionado para a seguinte página:

      $texto=$_POST["texto"];

      form
      input name="texto" type="text" value="echo $texto"
      /form

      Aqui acontece o que você deseja, primeiramente captura-se os dados enviados do outro formulário e armazena em uma variável, em seguida coloca-se esse valor da variável no atributo "value" do campo, como pode ser visto no código.

      Caso tenha mais dúvidas comente. Abraço!

      Excluir
  4. Amigo, Como faço para capturar dados preenchidos em algum formulário de outro site
    para que chegue no meu e-mail ?

    ResponderExcluir
  5. gostaria de criar um formulario com nome e email em html, porem quando a pessoa clicasse em enviar o email e nome viesse direto para minha caixa de email.
    obg.

    ResponderExcluir