Ir para conteúdo



Formulário (PHP)


  • Por favor, faça o login para responder
117 respostas neste tópico

#106 cubo magico

cubo magico
  • Membros
  • 8 posts

Postado 12 August 2010 - 08:31 PM

Boa noite,
Podem ajudar no me formulario , não consigo pôr a funcinar ao enviar dá erro, podem verificar no endereço:
formulario html > php

Programação HTML Ficheiro formulario.html

CODE
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
<title>O JARDIM DA LOLA</title>
</head>

<body>
<form id="form1" name="form1" method="post" action="envia.php">
  <p><img src="jardim+da+lola.jpg" width="180" height="138" /></p>
  <p>Ficha de pr&eacute;-inscri&ccedil;&atilde;o </p>
  <p>&nbsp;</p>
  <p>Nome da crian&ccedil;a:
    <input name="nome " type="text" id="nome " />
  </p>
  <label></label>
  <p>Menino:
    <label>
    <input name="menino" type="checkbox" id="menino" value="checkbox" />
    </label>
  Menina:
  <label>
  <input name="menina" type="checkbox" id="menina" value="checkbox" />
  </label>
  </p>
  <p>Data de nascimento:
    <label>
    <input name="nascimento" type="text" id="nascimento" />
    </label>
  </p>
  <p>Encarregado de educa&ccedil;&atilde;o:
    <label>
    <input name="encarregado" type="text" id="encarregado" />
    </label>
  </p>
  <p>Email:
    <label>
    <input name="email" type="text" id="email" />
    </label>
  </p>
  <p>Morada:
    <label>
    <input name="morada" type="text" id="morada" />
    </label>
  </p>
  <p>M&atilde;e:
    <label>
    <input name="m&atilde;e" type="text" id="m&atilde;e" />
    </label>
  </p>
  <p>Profiss&atilde;o:
    <label>
    <input name="profiss&atilde;omae" type="text" id="profiss&atilde;omae" />
    </label>
  </p>
  <p>Pai:
    <label>
    <input name="pai" type="text" id="pai" />
    </label>
  </p>
  <p>Profiss&atilde;o:
    <label>
    <input name="profiss&atilde;opai" type="text" id="profiss&atilde;opai" />
    </label>
  </p>
  <p>Observa&ccedil;&otilde;es:
    <textarea name="mensagem" id="mensagem"></textarea>
  </p>
  <p>
    <label></label>
    <label></label>
    <input name="Enviar" type="submit" id="submeter" value="Enviar" />
  </p>
  <p>&nbsp;</p>
</form>
<label></label>
</body>
</html>


envia.php

CODE
<?
$Nome_da_criança = $_POST['nome " rel="nofollow" target="_blank">;
$Data_de_nascimento = $_POST['nascimento" rel="nofollow" target="_blank">;
$Encarregado_de _educação = $_POST['encarregado" rel="nofollow" target="_blank">;
$Email = $_POST['email" rel="nofollow" target="_blank">;
$Morada = $_POST['morada" rel="nofollow" target="_blank">;
$Mãe = $_POST['mãe" rel="nofollow" target="_blank">;
$Profissão = $_POST['profissãomae" rel="nofollow" target="_blank">;
$Pai = $_POST['pai" rel="nofollow" target="_blank">;
$Profissão = $_POST['profissãopai" rel="nofollow" target="_blank">;
$Observações = $_POST['mensagem" rel="nofollow" target="_blank">;


global $email;

mail ("ricardo.gomes@cubomagicodesign.com","$assunto",
$Nome_da_crianca = $_POST['nome'];
$Data_de_nascimento = $_POST['nascimento'];
$Encarregado_de_educação = $_POST['encarregado'];
$Email = $_POST['email'];
$Morada = $_POST['morada'];
$Mãe = $_POST['mãe'];
$Profissão = $_POST['profissãomae'];
$Pai = $_POST['pai'];
$Profissão = $_POST['profissãopai'];
$Observações = $_POST['mensagem'];
"From: $email"
);

echo "<p align=center>Sua mensagem foi enviada com sucesso, $Nome da criança!</p>";
echo "<p align=center>Em breve entraremos em contato</p>";
?>




#107 ogaiht

ogaiht
  • Membros
  • 1 posts

Postado 19 August 2010 - 09:37 PM

cubo magico,

ao invez de definir as strings com acentos e cedilhas, como eu vi ai no codigo do envia.php, defina sem acentos, pontos e etc

$encarregado_de_educação = $encarregado_de_educacao (eu axo mais simples vc simplificar, tipo: $enc_educ)

ai vai do seu gosto.. tenta ai pra ver se vai.. nao sou nenhum expert em PHP, mesmo pq estou começando agora, mas o pouco que eu sei, ele nao aceita acentos e etc...

qto ao resto do pessoal que está pedindo ajuda, tirem o comando ini_set() do codigo e ve se funciona... esse smtp.eb.qualquer_coisa_que_nao_lembro_mais.com é somente pro servidor especifico... se voce jogar esse codigo em outro servidor, certamente o smtp.eb.xxx.com nao irá funcionar

#108 ReivaxII

ReivaxII
  • Membros
  • 15 posts

Postado 23 March 2011 - 01:23 PM

meu codigo ta dando erro, ta dando o ALERT e enviando o formulario ao mesmo tempo, da menssagem de eer mais envia os dados...

<?php

$para = "fulano@yahoo.com.br";

$nome = $_POST['nome'];
$email = $_POST['email'];
$fone = $_POST['fone'];
$cidade = $_POST['cidade'];
$estado = $_POST['estado'];
$assunto = $_POST['assunto'];
$mens = $_POST['mens'];
$erro==0;




$msg = "<strong>NOME: </strong>$nome <br /><br />";
$msg .= "<strong>E-MAIL: </strong>$email <br /><br />";
$msg .= "<strong>TELEFONE: </strong>$fone <br /><br />";
$msg .= "<strong>CIDADE: </strong>$cidade <br /><br />";
$msg .= "<strong>ESTADO: </strong>$estado <br /><br />";
$msg .= "<strong>ASSUNTO: </strong>$assunto<br /><br />";
$msg .= "<strong>MENSSAGEM: </strong>$mens<br /><br />";

$headers = "Content-Type: text/html; charset=UTF-8\n";
$headers .="From:<$email>\n";
$headers .="X-Mailer: PHP v".phpversion()."\n";
$headers .="Return-Path:<$email>\n";
$headers .="MIME-Version:1.0\n";

mail($para, $assunto, $msg, $headers);




if (empty($nome) || trim($nome)=="" )
{echo "<script>alert('Preecha o campo NOME!!!');history.back();</script>";$erro==1;exit();}
//script para voltar a pagina depois do alert; history.back();

if (strlen($email)<6 || strstr ($email,'@')==FALSE)
{echo "<script>alert('Preencha E-MAIL CORRETAMENTE !!!');history.back();</script>";$erro==1;exit();}

if (empty($cidade)|| trim($cidade)=="" )
{echo "<script>alert('Preecha o campo CIDADE!!!');history.back();</script>";$erro==1;exit();}

if (empty($assunto)|| trim($assunto)=="" )
{echo"<script>alert('Preecha o campo ASSUNTO!!!');history.back();</script>";$erro==1;exit();}

if (empty($mens)|| trim($mens)=="" )
{echo"<script>alert('Escreva a MENSSAGEM!!!');history.back();</script>";$erro==1;exit();}

if($erro==0)
{echo"<script>alert('Menssagem Enviada com Sucesso!');document.location.href='index.html';</script>";exit();}
//script para retornar a pagina limpando o form; ;*/

#109 kinzinho

kinzinho
  • Supervisores
  • 3929 posts

Postado 23 March 2011 - 07:09 PM

Observa sua lógica:

1 - salva os dados para enviar o email
2 - envia o email
3 - faz a validação

partindo dessa lógica o que acha que vai acontecer se existir algo como não preencher o nome?

ele vai enviar o email, depois vai te falar que não existe o nome e depois vai te redirecionar

logo basta colocar a validação antes de salvar os dados para envio e enviar = ]

<?php
if (empty($nome) || trim($nome)=="" )
{echo "<script>alert('Preecha o campo NOME!!!');history.back();</script>";}
//script para voltar a pagina depois do alert; history.back();

if (strlen($email)<6 || strstr ($email,'@')==FALSE)
{echo "<script>alert('Preencha E-MAIL CORRETAMENTE !!!');history.back();</script>";}

if (empty($cidade)|| trim($cidade)=="" )
{echo "<script>alert('Preecha o campo CIDADE!!!');history.back();</script>";}

if (empty($assunto)|| trim($assunto)=="" )
{echo"<script>alert('Preecha o campo ASSUNTO!!!');history.back();</script>";}

if (empty($mens)|| trim($mens)=="" )
{echo"<script>alert('Escreva a MENSSAGEM!!!');history.back();</script>";}


$para = "fulano@yahoo.com.br";

$nome = $_POST['nome'];
$email = $_POST['email'];
$fone = $_POST['fone'];
$cidade = $_POST['cidade'];
$estado = $_POST['estado'];
$assunto = $_POST['assunto'];
$mens = $_POST['mens'];




$msg = "<strong>NOME: </strong>$nome <br /><br />";
$msg .= "<strong>E-MAIL: </strong>$email <br /><br />";
$msg .= "<strong>TELEFONE: </strong>$fone <br /><br />";
$msg .= "<strong>CIDADE: </strong>$cidade <br /><br />";
$msg .= "<strong>ESTADO: </strong>$estado <br /><br />";
$msg .= "<strong>ASSUNTO: </strong>$assunto<br /><br />";
$msg .= "<strong>MENSSAGEM: </strong>$mens<br /><br />";

$headers = "Content-Type: text/html; charset=UTF-8\n";
$headers .="From:<$email>\n";
$headers .="X-Mailer: PHP v".phpversion()."\n";
$headers .="Return-Path:<$email>\n";
$headers .="MIME-Version:1.0\n";

mail($para, $assunto, $msg, $headers) or die('Erro ao enviar o email !');

echo"<script>
     alert('Menssagem Enviada com Sucesso!');
     document.location.href='index.html';
     </script>";
?>

Quer aprender PHP?
http://phparte.blogspot.com

Aguardando o FIM ou FILTRO do PHP...

Não confunda ajudar
com
Criar o script para você!

#110 ReivaxII

ReivaxII
  • Membros
  • 15 posts

Postado 23 March 2011 - 10:03 PM

o erro ainda persiste me ta mostrando ainda q o campo nome e e-mail sempre está dando erro mesmo certo e enviando ao mesmo tempo...

#111 kinzinho

kinzinho
  • Supervisores
  • 3929 posts

Postado 24 March 2011 - 10:57 PM

Caraca brother você nem se quer tentou ver onde tá o "ERRO" que na verdade não tem nada de erro, é só porque eu não subi esse POG ai de variável aff nego tem mania de copiar as paradas e não ler

<?php

$nome = $_POST['nome'];
$email = $_POST['email'];
$fone = $_POST['fone'];
$cidade = $_POST['cidade'];
$estado = $_POST['estado'];
$assunto = $_POST['assunto'];
$mens = $_POST['mens'];

if (empty($nome) || trim($nome)=="" )
{echo "<script>alert('Preecha o campo NOME!!!');history.back();</script>";}
//script para voltar a pagina depois do alert; history.back();

if (strlen($email)<6 || strstr ($email,'@')==FALSE)
{echo "<script>alert('Preencha E-MAIL CORRETAMENTE !!!');history.back();</script>";}

if (empty($cidade)|| trim($cidade)=="" )
{echo "<script>alert('Preecha o campo CIDADE!!!');history.back();</script>";}

if (empty($assunto)|| trim($assunto)=="" )
{echo"<script>alert('Preecha o campo ASSUNTO!!!');history.back();</script>";}

if (empty($mens)|| trim($mens)=="" )
{echo"<script>alert('Escreva a MENSSAGEM!!!');history.back();</script>";}

$para = "fulano@yahoo.com.br";

$msg = "<strong>NOME: </strong>$nome <br /><br />";
$msg .= "<strong>E-MAIL: </strong>$email <br /><br />";
$msg .= "<strong>TELEFONE: </strong>$fone <br /><br />";
$msg .= "<strong>CIDADE: </strong>$cidade <br /><br />";
$msg .= "<strong>ESTADO: </strong>$estado <br /><br />";
$msg .= "<strong>ASSUNTO: </strong>$assunto<br /><br />";
$msg .= "<strong>MENSSAGEM: </strong>$mens<br /><br />";

$headers = "Content-Type: text/html; charset=UTF-8\n";
$headers .="From:<$email>\n";
$headers .="X-Mailer: PHP v".phpversion()."\n";
$headers .="Return-Path:<$email>\n";
$headers .="MIME-Version:1.0\n";

mail($para, $assunto, $msg, $headers) or die('Erro ao enviar o email !');

echo"<script>
     alert('Menssagem Enviada com Sucesso!');
     document.location.href='index.html';
     </script>";
?>

Quer aprender PHP?
http://phparte.blogspot.com

Aguardando o FIM ou FILTRO do PHP...

Não confunda ajudar
com
Criar o script para você!

#112 ReivaxII

ReivaxII
  • Membros
  • 15 posts

Postado 24 March 2011 - 11:26 PM

brother eu to começando agora na area ded pregramaçao sou um pouco lento na lógida do negócio, tentei mudar ai subi desci rodei e continua ainda dando a msg de erro e logo em seguida ele envia do mesmo jeito http://www.empregosp...test/index.html eu sei que deve ser uma bobagem o erro mais n to conseguindo...

#113 kinzinho

kinzinho
  • Supervisores
  • 3929 posts

Postado 25 March 2011 - 02:55 PM

Mas eu já alterei pra vc ai em cima
Quer aprender PHP?
http://phparte.blogspot.com

Aguardando o FIM ou FILTRO do PHP...

Não confunda ajudar
com
Criar o script para você!

#114 ReivaxII

ReivaxII
  • Membros
  • 15 posts

Postado 25 March 2011 - 03:22 PM

alterado mesmo ta acontecendo aquilo ainda alerta e envia...

#115 kinzinho

kinzinho
  • Supervisores
  • 3929 posts

Postado 26 March 2011 - 10:12 AM

Então dá um die pra matar o script

if (empty($nome) || trim($nome)=="" )
{echo "<script>alert('Preecha o campo NOME!!!');history.back();</script>"; die();}
//script para voltar a pagina depois do alert; history.back();

if (strlen($email)<6 || strstr ($email,'@')==FALSE)
{echo "<script>alert('Preencha E-MAIL CORRETAMENTE !!!');history.back();</script>"; die();}

if (empty($cidade)|| trim($cidade)=="" )
{echo "<script>alert('Preecha o campo CIDADE!!!');history.back();</script>"; die();}

if (empty($assunto)|| trim($assunto)=="" )
{echo"<script>alert('Preecha o campo ASSUNTO!!!');history.back();</script>"; die();}

if (empty($mens)|| trim($mens)=="" )
{echo"<script>alert('Escreva a MENSSAGEM!!!');history.back();</script>"; die();}

Quer aprender PHP?
http://phparte.blogspot.com

Aguardando o FIM ou FILTRO do PHP...

Não confunda ajudar
com
Criar o script para você!

#116 ReivaxII

ReivaxII
  • Membros
  • 15 posts

Postado 26 March 2011 - 03:34 PM

po veio funciono legal com o DIE, http://empregospb.com/test/index.html ,sem problemas agora,
agradeço mesmo pela ajuda
valew

#117 himler

himler
  • Membros
  • 7 posts

Postado 31 March 2011 - 09:25 AM

Importante: A maioria dos grandes servidores exige que voce use uma conta interna para enviar o formulário e não aceitam mais a posição email como preenchimento do formulário. O importante é fazer testes para ver como seu servidor se comporta.

#118 dottieford

dottieford
  • Membros
  • 7 posts

Postado 03 June 2011 - 10:01 PM

I have tried the code and bang!! it's perfect, I can't see any problem,it's pretty well,,




0 usuário(s) está(ão) lendo este tópico

0 membro(s), 0 visitante(s) e 0 membros anônimo(s)