Formulario PHP

20/11/2012

Gente, eh a primeira vez q eu trabalho usando o PHP,
to tendo alguns problemas e gostaria de saber se alguem ai pode me ajudar!

O endereco do site eh [url]www.icylips.co.uk[/url]
No menu membership eu criei um formulario.
Mas agora eu n sei fazer o principal, que eh enviar esses dados para algum e-mail.
Na verdade, o ideal seria se eu recebesse esses dados diretamente em um banco de dados
isso eh possivel?

Muito obrigada
Raquel

PHP

Raquel Milreu

Respostas

20/11/2012

Raquel Milreu

o codigo que eu utilizei eh esse aqui, mas nao sei tambem se esta correto na parte
da inclusao da data de nascimento!

<!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=utf-8" />
<title>Envio email</title>
</head>

<body>

<?php



$conteudo = "

$fullname: $_POST[fullname];
$email: $_POST[email];
$number: $_POST[Number];
$date of Birth: $_POST[dia] $_POST[mes] $_POST[ano];
$gender: $_POST[man] $_POST[woman];

";

$env = mail("membership@icylips.co.uk",$_POST['assunto'],$conteudo,"from: $_POST[email]");

if ($env==1) {
	echo "Thank you.";
}else{
	echo "Failed. Please try again.";
}

?>

</body>
</html>
Responder Citar

21/11/2012

Eduardo Oliveira

Está dando algum erro ???? Você pode tanto enviar para um email, como também pode enviar diretamente para um bd.

Quanto ao código que foi postado, tem como melhora-lo, por exemplo:

você está fazendo isso:

$conteudo = "
$fullname: $_POST[fullname];
$email: $_POST[email];
$number: $_POST[Number];
$date of Birth: $_POST[dia] $_POST[mes] $_POST[ano];
$gender: $_POST[man] $_POST[woman];
";


Pelo que entendi, esse é o conteúdo do EMAIL em si correto? Mas observe que ao criar a variavel $conteudo você está atribuindo a ela como valor, outras variáveis com outros valores, isso não irá funcionar corretamente, o ideal seria você resgatar seus valores vindos do formulário atribui-los a uma variável, e trabalhar com elas, ficando assim:


$fullname = $_POST['fullname'];
$email = $_POST['email'];
$number = $_POST['Number'];
$date =   $_POST['dia'].$_POST['mes'].$_POST['ano'];
$gender = $_POST['sexo']; // o seu radio buton está errado, ele deve conter o mesmo name no caso seria sexo, e no value de cada um voce especifica M pra masculino, e F pra feminino, ou ainda usar a palavra intera masculino ou feminino.

$conteudo =  "Nome Completo : {$fullname}";
$conteudo .= "Email : {$email}";
$conteudo .= "Numero :{$number}";
$conteudo .= "Data :  {$date}";
$conteudo .= "Sexo :  {$gender}";



E por fim if($env == 1) ??? deixe dessa forma :


if($env)

Responder Citar

21/11/2012

Alisson

Amigo poderia postar o erro que está aparecendo??
Responder Citar

21/11/2012

Raquel Milreu

quanto ao erro, podem testar no proprio site, quando clica em submit aparece o erro!!

[url]http://www.icylips.co.uk/popupmembership/membership.htm[/url]
Responder Citar

21/11/2012

Raquel Milreu

Ola Eduardo, obrigada pela sua ajuda,
mas o codigo esta dando erro!

<?php



$fullname: $_POST['fullname'];
$email: $_POST['email'];
$number: $_POST['Number'];
$date: $_POST['dia'] $_POST['mes'] $_POST['ano'];
$gender: $_POST['gender'];

$conteudo .= "Full Name : {$fullname}";
$conteudo .= "Email : {$email}";
$conteudo .= "Number : {$number}";
$conteudo .= "Date : {$date}";
$conteudo .= "Gender : {$gender}";
";

$env = mail("membership@icylips.co.uk",$_POST['assunto'],$conteudo,"from: $_POST[email]");

if ($env) {
echo "Thank you.";
}else{
echo "Failed. Please try again.";
}

?>


ainda sim, quando vc preenche o formulario no site aparece uma outra pagina,

isso eh erro nao?

ou eh falta de uma pagina especifica pra quando se preenche o formulario?


<?php



$fullname: $_POST['fullname'];
$email: $_POST['email'];
$number: $_POST['Number'];
$date: $_POST['dia'] $_POST['mes'] $_POST['ano'];
$gender: $_POST['gender'];

$conteudo .= "Full Name : {$fullname}";
$conteudo .= "Email : {$email}";
$conteudo .= "Number : {$number}";
$conteudo .= "Date : {$date}";
$conteudo .= "Gender : {$gender}";
";

$env = mail("membership@icylips.co.uk",$_POST['assunto'],$conteudo,"from: $_POST[email]");

if ($env) {
	echo "Thank you.";
}else{
	echo "Failed. Please try again.";
}

?>
Responder Citar

22/11/2012

Eduardo Oliveira

Só uma pergunta antes de continuarmos, porque trocou o sinal de igual "=" por dois pontos ":" no momento de atribuir $_POST a uma variável?

Você pode processar as informações na mesma página que você tem seu formulário, para tanto basta colocar um sinal de cerquilha "#" no action do seu formulário, e essa página tem que ter a extensão .php
Responder Citar

24/11/2012

Raquel Milreu

Nossa, nao sei o pq, viajei.. ja coloquei o sinal de igual...

<?php



$fullname= $_POST['fullname'];
$email= $_POST['email'];
$number= $_POST['Number'];
$date= $_POST['dia'] $_POST['mes'] $_POST['ano'];
$gender= $_POST['gender'];

$conteudo .= "Full Name : {$fullname}";
$conteudo .= "Email : {$email}";
$conteudo .= "Number : {$number}";
$conteudo .= "Date : {$date}";
$conteudo .= "Gender : {$gender}";
";

$env = mail("membership@icylips.co.uk",$_POST['assunto'],$conteudo,"from: $_POST[email]");

if ($env) {
	echo "Thank you.";
}else{
	echo "Failed. Please try again.";
}

?>
Responder Citar

26/11/2012

Eduardo Oliveira

Resolveu?
Responder Citar