Ir para conteúdo

Arquivado

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

turtle-83

Formulário em PHP

Recommended Posts

Galera, alguém tem um exemplo de formulário de site?O que eu fiz não está funcionando corretamente...Após o preenchimento do form, o cliente clicaria num botão continuar, onde passaria para uma outra página com os dados que ele informou (apenas para confiramr se não está nada errado), assim ele pode enviar o formulário para um email qualquer...Se quiserem eu posso passar trechos do meu código, mas seria melhor se alguém já tivesse um funcionando.[]s

Compartilhar este post


Link para o post
Compartilhar em outros sites

posta o seu ai, com isso vamos arrumando ele ...

Compartilhar este post


Link para o post
Compartilhar em outros sites

posta o seu ai, com isso vamos arrumando ele ...

<{POST_SNAPBACK}>

fale.php

 

após as críticas de campo, tenho o código abaixo:

PHP

[*]<?php

[*]$nome  = $_POST["nome"];

[*]$sobrenome = $_POST["sobrenome"];

[*]$empresa = $_POST["empresa"];

[*]$end = $_POST["end"];

[*]$comp  = $_POST["comp"];

[*]$ddd_fone  = $_POST["ddd_fone"];

[*]$ddd_cel = $_POST["ddd_cel"];

[*]$email = $_POST["email"];

[*]$cbo_conheceu = $_POST["cbo_conheceu"];

[*]$cbo_tipo  = $_POST["cbo_tipo"];

[*]?>

 

e os botões:

<input class="botao" name="continuar" onclick="javascript:valida();" type="submit" id="continuar" value="CONTINUAR">

<input class="botao" name="limpar" type="reset" id="limpar" value="LIMPAR" onclick="javascript:document.form_contato.nome.focus();">

 

 

form.php

no arquivo form.php tenho no início:

 

PHP

[*]<?

[*]$msg = "Nome: \t$nome \n";

[*]$msg .= "Empresa: \t$empresa \n";

[*]$msg .= "Endereço: \t$end \n";

[*]$msg .= "Complemento: \t$comp \n";

[*]$msg .= "E-Mail: \t$email \n";

[*]$msg .= "Como conheceu a Voltalub?: \t$cbo_conheceu \n\n";

[*]$msg .= "Comentário: \t$comentario \n\n";

[*]

[*]$cabecalho = "Para: Voltalub \n";

[*]$cabecalho = "Cc: $email \n\n";

[*]?>

[*]<br>

[*]<?

[*]print"<font size=2 face=verdana color=#FF3300><b>$nome, favor conferir seus dados abaixo.</b>";

[*]?>

 

e um outro form abaixo do código acima para imprimir os dados informados na tela anterior...

 

os botões:

<input class="botao" name="corrigir" type="button" id="corrigir" value="CORRIGIR" onclick="javascript:history.go(-1)">

<input class="botao" name="enviar" type="submit" id="enviar" value="ENVIAR" onclick="<? mail("email para onde o form deve ser enviado", "Avaliação", $msg); ?>">

Compartilhar este post


Link para o post
Compartilhar em outros sites

Existem maneiras muito mais simples de se realizar isso:

Formulário:

<form name="cadastro" action="valida.php" method="POST">
....
<input type="submit" value="Continuar">
</form>

 

Script PHP:

PHP

[*]<?php

[*]$nome  = $_POST["nome"];

[*]$sobrenome = $_POST["sobrenome"];

[*]$empresa = $_POST["empresa"];

[*]$end = $_POST["end"];

[*]$comp  = $_POST["comp"];

[*]$ddd_fone  = $_POST["ddd_fone"];

[*]$ddd_cel = $_POST["ddd_cel"];

[*]$email = $_POST["email"];

[*]$cbo_conheceu = $_POST["cbo_conheceu"];

[*]$cbo_tipo  = $_POST["cbo_tipo"];

[*]

[*]$msg = "Nome: \t$nome \n";

[*]$msg .= "Empresa: \t$empresa \n";

[*]$msg .= "Endereço: \t$end \n";

[*]$msg .= "Complemento: \t$comp \n";

[*]$msg .= "E-Mail: \t$email \n";

[*]$msg .= "Como conheceu a Voltalub?: \t$cbo_conheceu \n\n";

[*]$msg .= "Comentário: \t$comentario \n\n";

[*]$cabecalho = "Para: Voltalub \n";

[*]$cabecalho = "Cc: $email \n\n";

[*]

[*]mail("email para onde o form deve ser enviado", "Avaliação", $msg);

[*]?>

Com isso você utiliza o mesmo script para verificar o formulário e enviar o email.

 

Abraços,

Compartilhar este post


Link para o post
Compartilhar em outros sites

Qual o erro que está dando???Alí na sua variável $cabecalho, você esqueceu de colocar o ponto de concatenação num dos dos valores passados:$cabecalho .= "valor passado....";Quando eu concateno a mesma variável para ser uzada na função mensagem, eu faço a quebra de linha dessa forma:$mensagem = "Nome da mensagem\r\n";$mensagem .= "E-mail de envio\r\n";etcSe eu não coloco \r\n dá erro.Faça as alterações e depois poste o resultado. ;)/>

Compartilhar este post


Link para o post
Compartilhar em outros sites

mas qual será a ação do botão que envia o email?

isso que eu não entendi...

 

tenho que colocar alguma coisa no evento onClick?

 

Quando passa para a página onde os dados serão confirmados, aparece um alert dizendo que deu "Erro em tempo de execução"

 

[]s

Compartilhar este post


Link para o post
Compartilhar em outros sites

Você não precisa colocar nada no evento onClick pois quando você clicar no botão type="submit" ele irá executar o script que você passou no action do form (<form action="script.php"...>). A função mail() pode ser executada no script, não é necessário colocar no evento onClick para enviar o email.Abraços,

Compartilhar este post


Link para o post
Compartilhar em outros sites

Você não precisa colocar nada no evento onClick pois quando você clicar no botão type="submit" ele irá executar o script que você passou no action do form (<form action="script.php"...>). A função mail() pode ser executada no script, não é necessário colocar no evento onClick para enviar o email.

 

Abraços,

<{POST_SNAPBACK}>

Seguinte, acho que não expliquei direito.

 

Tenho 2 telas, uma com o formulário para ser preenchido e dois botões abaixo:

CONTINUAR e LIMPAR.

 

Clicando no CONTINUAR ele passa para a página seguinte com os dados informados na tela anteior (apenas para confirmação de dados). Nessa nova tela existem mais 2 botões:

CORRIGIR e ENVIAR.

 

O botão ENVIAR não está fazendo nada, quero saber porque!

 

Outra coisa é quanto ao erro está aparecendo quando a segunda página que tem os dados informados é chamada. Aparece um alert dizendo que houve erro em tempo de execução!

 

Ahh, oura coisa, parece que agora a variável $msg não está recebendo os valores para serem mostrados na página de confirmação.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Você não precisa colocar nada no evento onClick pois quando você clicar no botão type="submit" ele irá executar o script que você passou no action do form (<form action="script.php"...>). A função mail() pode ser executada no script, não é necessário colocar no evento onClick para enviar o email.

 

Abraços,

<{POST_SNAPBACK}>

Seguinte, acho que não expliquei direito.

 

Tenho 2 telas, uma com o formulário para ser preenchido e dois botões abaixo:

CONTINUAR e LIMPAR.

 

Clicando no CONTINUAR ele passa para a página seguinte com os dados informados na tela anteior (apenas para confirmação de dados). Nessa nova tela existem mais 2 botões:

CORRIGIR e ENVIAR.

 

O botão ENVIAR não está fazendo nada, quero saber porque!

 

Outra coisa é quanto ao erro está aparecendo quando a segunda página que tem os dados informados é chamada. Aparece um alert dizendo que houve erro em tempo de execução!

 

Ahh, oura coisa, parece que agora a variável $msg não está recebendo os valores para serem mostrados na página de confirmação.

<{POST_SNAPBACK}>

Aí, alguém poderia me ajudar?

 

cadÊ o Artur Clemente? hahahahaa

Compartilhar este post


Link para o post
Compartilhar em outros sites

`João, se você não postar o código, não tem como saber o que está acontecendo!

Compartilhar este post


Link para o post
Compartilhar em outros sites

`João, se você não postar o código, não tem como saber o que está acontecendo!

<{POST_SNAPBACK}>

cara, o código está praticamente nas respostas acima, eu alterei como informado pelo Artur.

 

Estou no trabalho e não tenho o código no momento.

 

abraços e valeu pela preocupação.

 

chegando em casa eu posto direitinho...

Compartilhar este post


Link para o post
Compartilhar em outros sites

fale.php - Meu formulário com suas respectivas validações...

Atenção: A função valida() chamada no evento onClick não tem nada a ver com o arquivo valida.php

<form action="valida.php" method="post" name="fcontato" id="fcontato">
...
<input class="botao" name="continuar" onclick="javascript:valida();" type="button" id="continuar" value="CONTINUAR">
<input class="botao" name="limpar" type="reset" id="limpar" value="LIMPAR" onclick="javascript:document.fcontato.nome.focus();">

 

valida.php - Recebe os valores informados nos campos do formulário -> fale.php

PHP

[*]<?

[*]$nome  = $_POST["nome"];

[*]$sobrenome = $_POST["sobrenome"];

[*]$empresa = $_POST["empresa"]

[*]$end = $_POST["end"]

[*]$comp  = $_POST["comp"]

[*]$ddd_fone  = $_POST["ddd_fone"]

[*]$ddd_cel = $_POST["ddd_cel"]

[*]$email = $_POST["email"]

[*]$cbo_conheceu = $_POST["cbo_conheceu"]

[*]$cbo_tipo  = $_POST["cbo_tipo"]

[*]

[*]$msg = "Nome: \t$nome \r\n"

[*]$msg .= "Empresa: \t$empresa \r\n"

[*]$msg .= "Endereço: \t$end \r\n"

[*]$msg .= "Complemento: \t$comp \r\n"

[*]$msg .= "E-Mail: \t$email \r\n"

[*]$msg .= "Como conheceu a Voltalub?: \t$cbo_conheceu \r\n"

[*]$msg .= "Comentário: \t$comentario \r\n"

[*]

[*]$cabecalho = "Para: Voltalub \r\n"

[*]$cabecalho .= "Cc: $email \r\n"

[*]

[*]mail("email para qual o form deve ser enviado", "Avaliação", $msg)

[*]?>

[*]<br>

[*]<?

[*]print"<font size=2 face=verdana color=#FF3300><b>$nome, favor conferir seus dados abaixo.</b>";

[*]?>

 

<form method="post" name="fenviar" id="fenviar">

<td width="550" height="25" colspan="2">
<strong><font color="#000000">
PHP[list=1]

[*]<? print"<font size=2 face=verdana>Nome:</font>" ?>
[/list]
</font></strong>
<font color="#000000">
PHP[list=1]

[*]<? print"<font size=2 face=verdana> $nome $sobrenome</font>" ?>
[/list]
</font></td>

 

<input class="botao" name="corrigir" type="button" id="corrigir" value="CORRIGIR" onclick="javascript:history.go(-1)">
<input class="botao" name="enviar" type="submit" id="enviar" value="ENVIAR" onclick="<? mail("email para qual o form deve ser enviado", "Avaliação", $msg); ?>">

 

Problemas:

 

As variáveis $nome $sobrenome $empresa $end $comp $ddd_fone $ddd_cel $email e $cbo_conheceu não retornam valor para o form valida.php onde são mostrados os dados informados na tela anterior.

 

a função mail() do php não está funcionando.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Nesse caso você tem apenas duas páginas, uma fale.php e a outra valida.php, sendo que nesta última você tem esses botões de formulários ou são várias páginas separadas?

Compartilhar este post


Link para o post
Compartilhar em outros sites

Nesse caso você tem apenas duas páginas, uma fale.php e a outra valida.php, sendo que nesta última você tem esses botões de formulários ou são várias páginas separadas?

<{POST_SNAPBACK}>

Ahh sim, como havia explicado mais acima em outro post são 2 páginas, a fale.php possui os botões CONTINUAR e LIMPAR, logo a valida.php possui CORRIGIR e ENVIAR.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Cara, eu acho que deve ter alguma coisa há ver com a sua action se igual a $_SERVER['PHP_SELF'];Você sabe usar esse tipo de variável?

Compartilhar este post


Link para o post
Compartilhar em outros sites

Cara, eu acho que deve ter alguma coisa há ver com a sua action se igual a $_SERVER['PHP_SELF'];

 

Você sabe usar esse tipo de variável?

<{POST_SNAPBACK}>

nunca usei....

 

achei que esse form estava simples, mas está dando tanto erro...

Compartilhar este post


Link para o post
Compartilhar em outros sites

Dá uma pesquisada nessa variável lá no Manual, ou então tente fazer enviando de uma página para outra. Eu acho que o problema está aí, as vari'veis não estão sendo enviadas para a mesma página "php_self".

Compartilhar este post


Link para o post
Compartilhar em outros sites

Dá uma pesquisada nessa variável lá no Manual, ou então tente fazer enviando de uma página para outra. Eu acho que o problema está aí, as vari'veis não estão sendo enviadas para a mesma página "php_self".

<{POST_SNAPBACK}>

Mas cara! eu estou enviando de uma página para outra!

 

da fale.php para valida.php

Compartilhar este post


Link para o post
Compartilhar em outros sites

É, mas e o form id="fenviar" Lá está sem action. Acho que você tem que usar as variáveis locais, não é?

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.