Colocar Resposta 
 
Avaliação do Tópico:
  • 0 votos - 0 Média
  • 1
  • 2
  • 3
  • 4
  • 5
Formulário Mail PHP
07-12-2009, 20:45 (Esta mensagem foi modificada pela última vez a: 08-12-2009 00:57 por TiagoMatias.)
Mensagem: #1
Formulário Mail PHP
Boa Tarde,

Estou com um problema no envio de um mail através de uma função de PHP. O que se passa é que o mail é enviado correctamente, mas as variáveis "var1", "var2", e "var3" do ficheiro php não são enviadas no mail.

Código:
//Ficheiro HTML

<form name="form1" method="post" onsubmit="return formCheck(this);" action="enviar.php">
<textarea name="var1" cols="30" rows="5"></textarea>
<textarea name="var2" cols="30" rows="5"></textarea>
<textarea name="var3" cols="30" rows="5"></textarea>
</form>

Código PHP:
//enviar.php

<?php function data()
{
$headers "MIME-Version: 1.0\r\n";
$headers .= "Content-type: text/html; charset=iso-8859-1\r\n";
$email "mail@mail.com";
$assunto "Assunto";
$mensagem "
<b>Dados:</b>
<p><b>Dado1:</b> 
$var1 <br>
<b>Dado2:</b> 
$var2 <br>
<b>Dado3:</b> 
$var3 <br>
"
;
mail($email$assunto$mensagem$headers);
include(
"mailok.htm");
?>

Alguém me dá uma ajudinha?

Obrigado,

Abraço,
Tiago Matias
Procurar todas as mensagens deste utilizador
Citar esta mensagem numa resposta
07-12-2009, 20:48
Mensagem: #2
RE: Formulário Mail PHP
Ok,

Não vou entrar em detalhes relativamente às imensas falhas de segurança que aí tens.

Mas tens de adicionar isto antes de definires os headers:

Código:
$var1 = $_POST['var1'];
$var2 = $_POST['var2'];
$var3 = $_POST['var3'];

Nota também que no html tens duas vezes var2 em vez de var2 e var3.

BrunoBernardino.com
Visitar Website de este utilizador Procurar todas as mensagens deste utilizador
Citar esta mensagem numa resposta
07-12-2009, 20:53 (Esta mensagem foi modificada pela última vez a: 07-12-2009 21:05 por TiagoMatias.)
Mensagem: #3
RE: Formulário Mail PHP
Obrigado.. Sim, foi uma adaptação rápida que fiz dum código maior, mas para não o estar a escrever todo, fiz isto rápido e saíram alguns erros como já vi.

Quantos às falhas de segurança, acredito que o mail ali exposto a quem veja a source não seja nada agradável, mas era um código antigo que já aqui tinha e como não sou programador nem nada que se pareça (só dou mesmo uns toques para o desenrascanço), aproveitei-o para me desenrascar ainda hoje Big Grin

Vou experimentar, já digo qualquer coisa.

Cump,
TM

EDIT: Não funcionou.. continua a não enviar as variáveis para o e-mail, mesmo definidas antes dos headers como disseste.. estará a faltar alguma coisa?
Procurar todas as mensagens deste utilizador
Citar esta mensagem numa resposta
07-12-2009, 23:25
Mensagem: #4
RE: Formulário Mail PHP


Tens o formulário com o campo name="valor1" (exemplo)

No ficheiro php para que é enviado o formulário, tens que ter uma leitura dos dados em post, ou seja:

$var1 = $_POST['valor1'];

a variavel $var1 vai ficar com o valor determinado pelo utilizador. Depois é só processa-las....

Website: iCarneiro | Twitter: ycarneiro
Visitar Website de este utilizador Procurar todas as mensagens deste utilizador
Citar esta mensagem numa resposta
07-12-2009, 23:38
Mensagem: #5
RE: Formulário Mail PHP
Sim, já experimentei fazer isso mas continua sem dar. O que estou a reparar é que ele lê e envia bem a variável $assunto por exemplo, e os dados escritos dentro da variável $mensagem.

As variáveis que ele não imprime para o mail é as variáveis que mando ler dentro da variável $mensagem. Por exemplo $var1 que a declaro dentro da variável $mensagem.
Procurar todas as mensagens deste utilizador
Citar esta mensagem numa resposta
07-12-2009, 23:41
Mensagem: #6
RE: Formulário Mail PHP
aparece no e-mail:

$var1

ou nao aparece nada?!

faz um debug.. antes de enviar e-mail, imprime cada uma das variaveis e vê o no que dá...

Website: iCarneiro | Twitter: ycarneiro
Visitar Website de este utilizador Procurar todas as mensagens deste utilizador
Citar esta mensagem numa resposta
07-12-2009, 23:55
Mensagem: #7
RE: Formulário Mail PHP
No mail não aparece nada sequer...

Humm. não tenho como fazer debug, estou a programar em .txt, apesar que também sou meio nerdo nisto lolEEK!
Procurar todas as mensagens deste utilizador
Citar esta mensagem numa resposta
08-12-2009, 02:11 (Esta mensagem foi modificada pela última vez a: 08-12-2009 02:11 por Ana.)
Mensagem: #8
RE: Formulário Mail PHP
Faz:

Código PHP:
echo '<p>var1 = '$var1 '</p>';
echo 
'<p>var2 = '$var2 '</p>';
echo 
'<p>var3 = '$var3 '</p>'

Depois de definires o valor das variáveis, imprimindo assim o seu valor.

[Imagem: pplware_admin.png]
Os meus artigos | O meu site
Visitar Website de este utilizador Procurar todas as mensagens deste utilizador
Citar esta mensagem numa resposta
Colocar Resposta 


Saltar Fórum:


Utilizadores a ver este tópico: 1 Visitante(s)