Usamos cookies para medir audiência e melhorar sua experiência. Você pode aceitar ou recusar a qualquer momento. Veja sobre o iMasters.
Amigos tenho um Sistema de FORMAIL que não funciona de jeito nenhum no PHP 5.2.3.
Gostaria de uma ajuda dos amigos do forum para solucionar esse problema, segue abaixo meu Formulário e o Formail utilizado.
Já mudei de From: $e_mail para From: $nome mas não funcionou!
Desde já agradeço a ajuda dos amigos do forum!
formail.php
<?
include "endereco.php";
$msg = "Nome:\t$nome\n";
$msg .= "E-mail:\t$e_mail\n";
$msg .= "Mensagem:\t$mensagem\n";
$cabecalho = "From: $e_mail";#Titulo da mensagem
mail("seuemail@dominio.com.br", "Contato do Site", $msg, $cabecalho);#Aonde se encontra webmaster@toprom.zzn.com, deve estar o seu e-mail!
echo"Retornaremos com sua resposta o mais breve possível! ";#Texto dois de agradecimento
?>
contatos.php
<html>
<head>
<title>FORMULÁRIO</title>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
</head>
<body bgcolor="#FFFFFF" leftmargin=0 topmargin=0 marginwidth="0" marginheight="0">
<table border="0" cellpadding="0" cellspacing="0" width="100%">
<tr valign="top">
<td width="571" height="544">
<form action="formail.php" method="post" id="form_lc" name="form_lc">
<font color="#99FFFF"> </font>
<table width="98%" border="0" align="center" cellpadding="0" cellspacing="3" bordercolor="#000000">
<tr>
<td><font color="#000000" size="1" face="Verdana"><strong>NOME</strong>:</font></td>
</tr>
<tr>
<td><font color="#000000" size="1" face="Verdana">
<input name="nome" type="text" id="$nome" size="35" maxlength="60">
</font></td>
</tr>
<tr>
<td height="13"><font color="#000000" size="1" face="Verdana"><strong>E-MAIL:</strong></font></td>
</tr>
<tr>
<td><font color="#000000" face="Verdana" size="1">
<input name="e_mail" type="text" id="$e_mail" size="35" maxlength="60">
<b><b> </b></b></font></td>
</tr>
<tr>
<td> <font color="#000000" size="1" face="Verdana"><strong>MENSAGEM</strong>:
</font></td>
</tr>
<tr>
<td><font color="#000000" size="1" face="Verdana">
<textarea name="mensagem" cols="39" rows="6" id="textarea"></textarea>
</font></td>
</tr>
<tr>
<td></font></td>
</tr>
<tr>
<td height="20"><font color="#000000" size="1" face="Verdana">
<input type="submit" value="Enviar " name="submit">
<input type="reset" value="Limpar " name="reset">
</font></td>
</tr>
</table>
</form>
</td>
</tr>
</table>
</body>
</html>Testa ai amigão, o problema é o parâmetro $_POST que alguns de vocês costumam deixar de colocar, colocando assim apenas o nome dos campos como variáveis.
Olá amigo Alaerte, inserir os parâmetos que realmente eu tenho o costume de não inserir, e o formulário continua não enviando os dados dos campos preenchidos para o meu e-mail.
<?
include "endereco.php";
// PARÂMETOS
$msg = "Nome:\t$nome\n";
$msg .= "E-mail:\t$e_mail\n";
$msg .= "Mensagem:\t$mensagem\n";
$cabecalho = "From: $e_mail";#Titulo da mensagem
mail("seuemail@dominio.com.br", "Contato do Site", $msg, $cabecalho);#Aonde se encontra webmaster@toprom.zzn.com, deve estar o seu e-mail!
echo"Retornaremos com sua resposta o mais breve possível! ";#Texto dois de agradecimento
?>
Valeu amigo, continuo querendo descobrir esse segreto, já tentei de tudo!
Obrigaduuuuuuuuu
<?php
include "endereco.php";
// PARÂMETOS
$msg = "Nome:\t$nome\n";
$msg .= "E-mail:\t$e_mail\n";
$msg .= "Mensagem:\t$mensagem\n";
$para = "endereco@provedor.com";
$assunto='Contato do Site';
$headers = "MIME-Version: 1.0\r\n".
"Content-type: text/html; charset=iso-8859-1\r\n".
"From: $e_mail <".$para.">\r\n".
"To: 'Client' <".$para.">\r\n".
"Date: ".date("r")."\r\n".
"Subject: ".$assunto."\r\n";
if(mail($para,$assunto,$msg,$headers)){
echo"Retornaremos com sua resposta o mais breve possível! ";#Texto dois de agradecimento
}
?>
>
<?php
include "endereco.php";
// PARÂMETOS
$msg = "Nome:\t$nome\n";
$msg .= "E-mail:\t$e_mail\n";
$msg .= "Mensagem:\t$mensagem\n";
$para = "endereco@provedor.com";
$assunto='Contato do Site';
$headers = "MIME-Version: 1.0\r\n".
"Content-type: text/html; charset=iso-8859-1\r\n".
"From: $e_mail <".$para.">\r\n".
"To: 'Client' <".$para.">\r\n".
"Date: ".date("r")."\r\n".
"Subject: ".$assunto."\r\n";
if(mail($para,$assunto,$msg,$headers)){
echo"Retornaremos com sua resposta o mais breve possível! ";#Texto dois de agradecimento
}
?>
Amigo Alaerte, muito obrigado pela ajuda, mas parece brincadeira, NÃO FUNFOU!!!!!
Será que eu vou ter que mudar de servidor pra fazer esse formulário funcionar???????
opa!!
so meio nub do assunto hehhhe
nao sei o pq do "include "endereco.php";"
pois se o seu "contato.php" ja estiver no action o "formail.php" num precisa do include... a nao ser que queira outras info do arquivo, ai sim...
eu uso um form aki que nunka deu problema....
talvez seja um pouco mais trabalhoso pra você... mais funciona
formail.php
<?php
include ("endereco.php");
$msg = "
Solicitação do form
-------------------------------------------------
Nome: " . $_POST['nome'] . "
-------------------------------------------------
Email: " . $_POST['e_mail'] . "
-------------------------------------------------
Mensagem: " . $_POST['mensagem'] . "
-------------------------------------------------
";
$header = "From: titulodamensagem <$e_mailSite";
mail('$e_mailSite','Solicitação de form',$msg,$header);
?>
num sei se te ajuda mais ai é bem simples em kda "$_POST" ai você poe o nome da id do seu input!!
bem simples e sempre funciona!!
espero ter ajudado ^^
tento?
Amigo Lucas Pereira, parece brincadeira, mas NÃO FUNFOU!
Provavelmente seja alguma configuração no servidor de hospedagem que eu deva solicitar a sua habilitação, só pode ser!
Agradeço a ajuda dos amigos do forum, e fico no aguardo de mais dicas que possam solucionar esse "problema".
Obrigado Amigossssssssssss
Aparece algum erro filho ?
Aparece algum erro filho ?
Amigo Alaerte, não aparece erro algum!
Muito pelo contrário, ao enviar o Formulário de Contato, o arquivo formail.php é carregado com sucesso sem erros! exibindo inclusive o texto 'Retornaremos com sua resposta o mais breve possível!'.
Olha, tá difícil hein!
Vamos lá:
CODE
<form action="formail.php" method="post" id="form_lc" name="form_lc">
<font color="#99FFFF"> </font>
<table width="98%" border="0" align="center" cellpadding="0" cellspacing="3" bordercolor="#000000">
<tr>
<td><font color="#000000" size="1" face="Verdana"><strong>NOME</strong>:</font></td>
</tr>
<tr>
<td><font color="#000000" size="1" face="Verdana">
<input name="nome" type="text" id="nome" size="35" maxlength="60">
</font></td>
</tr>
<tr>
<td height="13"><font color="#000000" size="1" face="Verdana"><strong>E-MAIL:</strong></font></td>
</tr>
<tr>
<td><font color="#000000" face="Verdana" size="1">
<input name="e_mail" type="text" id="e_mail" size="35" maxlength="60">
<b><b> </b></b></font></td>
</tr>
<tr>
<td> <font color="#000000" size="1" face="Verdana"><strong>MENSAGEM</strong>:
</font></td>
</tr>
<tr>
<td><font color="#000000" size="1" face="Verdana">
<textarea name="mensagem" cols="39" rows="6" id="textarea"></textarea>
</font></td>
</tr>
<tr>
<td></font></td>
</tr>
<tr>
<td height="20"><font color="#000000" size="1" face="Verdana">
<input type="submit" value="Enviar " name="ok">
<input type="reset" value="Limpar " name="reset">
</font></td>
</tr>
</table>
</form>
formail.php
CODE
<?php
if($_SERVER['REQUEST_METHOD']=='POST'){
if(isset($_POST['ok'])){
$nome=$_POST['nome'];
$e_mail=$_POST['e_mail'];
$mensagem=$_POST['mensagem'];
$msg = "Nome:\t$nome\n";
$msg .= "E-mail:\t$e_mail\n";
$msg .= "Mensagem:\t$mensagem\n";
$para = 'endereco@provedor.com';
$assunto='Contato do Site';
$headers = "MIME-Version: 1.0\r\n".
"Content-type: text/html; charset=iso-8859-1\r\n".
"From: $e_mail <".$para.">\r\n".
"To: 'Client' <".$para.">\r\n".
"Date: ".date("r")."\r\n".
"Subject: ".$assunto."\r\n";
if(mail($para,$assunto,$msg,$headers)){
echo"Retornaremos com sua resposta o mais breve possível! ";#Texto dois de agradecimento
}
}
}
?>
Testa ai agora colega, abraço.
>
Vamos lá:
CODE
<form action="formail.php" method="post" id="form_lc" name="form_lc">
<font color="#99FFFF"> </font>
<table width="98%" border="0" align="center" cellpadding="0" cellspacing="3" bordercolor="#000000">
<tr>
<td><font color="#000000" size="1" face="Verdana"><strong>NOME</strong>:</font></td>
</tr>
<tr>
<td><font color="#000000" size="1" face="Verdana">
<input name="nome" type="text" id="nome" size="35" maxlength="60">
</font></td>
</tr>
<tr>
<td height="13"><font color="#000000" size="1" face="Verdana"><strong>E-MAIL:</strong></font></td>
</tr>
<tr>
<td><font color="#000000" face="Verdana" size="1">
<input name="e_mail" type="text" id="e_mail" size="35" maxlength="60">
<b><b> </b></b></font></td>
</tr>
<tr>
<td> <font color="#000000" size="1" face="Verdana"><strong>MENSAGEM</strong>:
</font></td>
</tr>
<tr>
<td><font color="#000000" size="1" face="Verdana">
<textarea name="mensagem" cols="39" rows="6" id="textarea"></textarea>
</font></td>
</tr>
<tr>
<td></font></td>
</tr>
<tr>
<td height="20"><font color="#000000" size="1" face="Verdana">
<input type="submit" value="Enviar " name="ok">
<input type="reset" value="Limpar " name="reset">
</font></td>
</tr>
</table>
</form>
formail.php
CODE
<?php
if($_SERVER['REQUEST_METHOD']=='POST'){
if(isset($_POST['ok'])){
$nome=$_POST['nome'];
$e_mail=$_POST['e_mail'];
$mensagem=$_POST['mensagem'];
$msg = "Nome:\t$nome\n";
$msg .= "E-mail:\t$e_mail\n";
$msg .= "Mensagem:\t$mensagem\n";
$para = 'endereco@provedor.com';
$assunto='Contato do Site';
$headers = "MIME-Version: 1.0\r\n".
"Content-type: text/html; charset=iso-8859-1\r\n".
"From: $e_mail <".$para.">\r\n".
"To: 'Client' <".$para.">\r\n".
"Date: ".date("r")."\r\n".
"Subject: ".$assunto."\r\n";
if(mail($para,$assunto,$msg,$headers)){
echo"Retornaremos com sua resposta o mais breve possível! ";#Texto dois de agradecimento
}
}
}
?>
Testa ai agora colega, abraço.
Olá Alaerte, em primeiro lugar gostaria de agradecer pela enorme ajuda, em segundo quero dizer que eu programo com PHP há 6 anos e já enfrentei diversas problemas e que a grande maioria os amigos aqui do forum me ajudaram a resolver, mas esse aqui tá difícil no mundooo....
Parace brincadeira, mas não FUNFOU mais uma vez!
Tou aqui em manaus, batendo cabeça até resolver essa salada!
Obrigado a todos os amigos do forum e continuo aqui aguardando as dicas dos amigos!
>
Vamos lá:
CODE
<form action="formail.php" method="post" id="form_lc" name="form_lc">
<font color="#99FFFF"> </font>
<table width="98%" border="0" align="center" cellpadding="0" cellspacing="3" bordercolor="#000000">
<tr>
<td><font color="#000000" size="1" face="Verdana"><strong>NOME</strong>:</font></td>
</tr>
<tr>
<td><font color="#000000" size="1" face="Verdana">
<input name="nome" type="text" id="nome" size="35" maxlength="60">
</font></td>
</tr>
<tr>
<td height="13"><font color="#000000" size="1" face="Verdana"><strong>E-MAIL:</strong></font></td>
</tr>
<tr>
<td><font color="#000000" face="Verdana" size="1">
<input name="e_mail" type="text" id="e_mail" size="35" maxlength="60">
<b><b> </b></b></font></td>
</tr>
<tr>
<td> <font color="#000000" size="1" face="Verdana"><strong>MENSAGEM</strong>:
</font></td>
</tr>
<tr>
<td><font color="#000000" size="1" face="Verdana">
<textarea name="mensagem" cols="39" rows="6" id="textarea"></textarea>
</font></td>
</tr>
<tr>
<td></font></td>
</tr>
<tr>
<td height="20"><font color="#000000" size="1" face="Verdana">
<input type="submit" value="Enviar " name="ok">
<input type="reset" value="Limpar " name="reset">
</font></td>
</tr>
</table>
</form>
formail.php
CODE
<?php
if($_SERVER['REQUEST_METHOD']=='POST'){
if(isset($_POST['ok'])){
$nome=$_POST['nome'];
$e_mail=$_POST['e_mail'];
$mensagem=$_POST['mensagem'];
$msg = "Nome:\t$nome\n";
$msg .= "E-mail:\t$e_mail\n";
$msg .= "Mensagem:\t$mensagem\n";
$para = 'endereco@provedor.com';
$assunto='Contato do Site';
$headers = "MIME-Version: 1.0\r\n".
"Content-type: text/html; charset=iso-8859-1\r\n".
"From: $e_mail <".$para.">\r\n".
"To: 'Client' <".$para.">\r\n".
"Date: ".date("r")."\r\n".
"Subject: ".$assunto."\r\n";
if(mail($para,$assunto,$msg,$headers)){
echo"Retornaremos com sua resposta o mais breve possível! ";#Texto dois de agradecimento
}
}
}
?>
Testa ai agora colega, abraço.
Olá Alaerte, em primeiro lugar gostaria de agradecer pela enorme ajuda, em segundo quero dizer que eu programo com PHP há 6 anos e já enfrentei diversas problemas e que a grande maioria os amigos aqui do forum me ajudaram a resolver, mas esse aqui tá difícil no mundooo....
Parace brincadeira, mas não FUNFOU mais uma vez!
Tou aqui em manaus, batendo cabeça até resolver essa salada!
Obrigado a todos os amigos do forum e continuo aqui aguardando as dicas dos amigos!
Eu eim... é muito estranho amigo, vou te passar um Script de email em PHP, não precisará fazer mais nada apenas configurar o email de destipo e algumas coisas, no tópico ta explicando tudo, veja:
http://forum.imasters.com.br/public/style_emoticons/default/seta.gif http://forum.webaplicacoes.com/index.php?p...;postID=3#post3
Abraços.
>
Eu eim... é muito estranho amigo, vou te passar um Script de email em PHP, não precisará fazer mais nada apenas configurar o email de destipo e algumas coisas, no tópico ta explicando tudo, veja:
http://forum.imasters.com.br/public/style_emoticons/default/seta.gif http://forum.webaplicacoes.com/index.php?p...;postID=3#post3
Abraços.
Ei Alaerte, passa mal! NÃO FUNFOU!!!
O script roda direitinho, envia a mensagem de que o formulário foi enviado com sucesso, mas não chega no e-mail!
Estamos aqui tentando!!!!
pelos sintomas parece ser falha no envio do cabeçalho ou do servidor SMTP
faça um teste simples
email_teste.php execute pelo browser http://.../email_teste.php
<?php
$mail['hostSMTP'] = 'lcoalhost';
$mail['hostSMTPPort'] = 25;
$mail['fromName'] = 'Alex';
$mail['fromEmail'] = 'emailDe@QuemEnvia';
$mail['toEmail'] = 'emailPra@ondeVai';
$mail['subject'] = 'assuntoDoEmail';
$mail['body'] = 'conteudo/corpoDoEmail';
// seta configurações em tempo de execução
ini_set( 'SMTP', $mail['hostSMTP'] );
ini_set( 'smtp_port', $mail['hostSMTPPort'] );
ini_set( 'sendmail_from', $mail['fromEmail'] );
if( mail( $mail['toEmail'], $mail['subject'], $mail['body'] ) ){
echo 'ok, email enviado';
}else{
echo 'warn e-mail não enviado';
}
?>
se nao funcionar relate o problema para o suporte do serviço de hospedagem
pode ser que tenham alguma configuração específica ou pode ser falha.
hinom, é problema de servidor com verteza.... é impossível o script que desenvolvi não funcionar, sempre funcionou tanto comigo tanto com quem já usou, o melhor a fazer é ele reportar ao suporte este problema, ao meu ver.
SOLUCIONADO!!!
Essa foi a resposta que a empresa de hospedagem me enviou:
>
Prezado cliente,
Para que as mensagens sejam enviadas corretamente do servidor, é necessário enviar com autenticação. Ou seja, usar login e senha de uma conta de e-mail existente no domínio.
Tive que fazer o formulário funcionar através do phpmailer
Quero agradecer a ajuda de todos os amigos do forum que sempre estão com disposição a nos ajudar!
Obrigado a todos
Atenciosamente,
Alex Dias
Nossa... ainda bem que resolveu, pois não tinha condições rsrsrs...
Testa ai amigão, o problema é o parâmetro $_POST que alguns de vocês costumam deixar de colocar, colocando assim apenas o nome dos campos como variáveis.