Jump to content


Photo

Mail From Em Php


  • Faça o login para participar
4 replies to this topic

#1 Dekhan

Dekhan

    Novato no fórum

  • Usuários
  • 9 posts
  • Sexo:Não informado
  • Localidade:Curitiba

Posted 03/11/2005, 14:23

Seguinte pessoal, estou com um script antigo de formulário de contato em Rastreare, bom o problema é o seguinte:

O formulário funciona perfeitamente, exceto por um pequeno detalhe:

quando enviado os mails, tanto para o pessoal responsavel do site, quanto para o cliente que entrou em contato, o endereço que aparece é algo como "nobody@meu.servidor.com.br" e eu queria que aparecesse o endereço do pessoal responsável ( no caso rastrea@rastreare.com.br, ou outro mail de minha escolha (devidamente configurado no servildor)

E o nome do remetente também, em vez de dar algum nome ele aparece "Nobody" se houver como fazer para aparecer o nome tpo "Suporte" ou outra coisa...

por favor, me ajudem, se preciso for eu posto os arquivos de programação!!

é urgente

Obrigado
When the darkness comes true
You nothing can do
Just wait for the Scarce Light
To believe in a Lie once again

=======================================

Imagens na assinatura não são permitidas. Leia as regras...
http://forum.wmonlin...?showtopic=8856

=======================================
Web Slayers

#2 Felipe Pena

Felipe Pena

    O temor do Senhor é o princípio da sabedoria

  • Ex-Admins
  • 6441 posts
  • Sexo:Masculino

Posted 03/11/2005, 14:37

Basta você usar o cabeçalho para isso.

$headers ="Content-Type: text/html; charset=iso-8859-1\n"; 
$headers.="From: $origem<admin@provedor.com>\n";

Você usa essa variável no último argumento da função mail().
Felipe Pena
[...] ó terra, terra, terra; ouve a palavra do Senhor. — Jeremias 22:29

#3 Dekhan

Dekhan

    Novato no fórum

  • Usuários
  • 9 posts
  • Sexo:Não informado
  • Localidade:Curitiba

Posted 03/11/2005, 16:06

ainda não to me acertando... vou postar aki os códigos:

Código do Config.php:

<?
/*
* Configurações do formulário de Contato
* Altere a variavel $mail_destino para o seu email
* 
*/

//Seu email, para onde irao as informações do formulário
$mail_destino  = "dek@webslayers.com.br";

//Assunto dos mails
$assunto            = "Formulário de Contato - Rastreare.com.br";

//Mensagem de cabeçalho do email
$mail_msg = "Seu pedido pelo formulário do site www.rastreare.com.br foi enviado com sucesso, entraremos em contato assim que possivel. Obrigado";

//Mensagem para o email de resposta
$msg_reply 	 = "Seu pedido foi enviado, Logo entraremos em contato";

//Mensagem de Erro
$msg_erro 	 = "Atenção!! Os campos <font color=$cor_site><b>Nome, Telefone, e E-mail</b></font> não podem estar em branco.";

//Configuração de envio de email
$origem = "Equipe Rastreare";
$headers ="Content-Type: text/html; charset=iso-8859-1\n"; 
$headers.="From: $origem<rastreare@rastreare.com.br>\n"; 

?>


Código do email.php
<?php

include("config.php");

//Testa campos obrigatórios
if ($nome!="" and $DDD!="" and $email!="" and $telefone!="")
	{
	$msg.="Nome: $nome\n";
	$msg.="Endereço: $endereco\n";
	$msg.="Numero: $numero\n";
	$msg.="Complemento: $complemento\n";
	$msg.="Cidade: $cidade\n";
	$msg.="UF: $UF\n";
	$msg.="E-mail: $email\n";
	$msg.="DDD: $DDD\n";
	$msg.="Telefone: $telefone\n";
	$msg.="$mensagem\n";
	
	if (@ mail ($mail_destino, $assunto, $msg, $mail_header))
  {
  //Imprimindo confirmação de envio
  echo 
 	 "
 	 <html>
 	 <meta http-equiv=refresh content=5;URL=contato.html></html>";
 	 echo "$nome, sua mensagem:<br> $mensagem <br>.Foi enviada com sucesso!<br>";
 	 echo "Obrigado!<br><br>
 	 ";
  //Enviando mensagem de confirmação para o email do internauta
  @ mail ($headers,$email,"Re: $assunto",$msg_reply,$mail_msg);
  }
  else
  echo
 	 "
 	 <meta http-equiv=refresh content=5;URL=contato.html>
 	 </html><center><br><br><font color=red>
 	 <b>Erro ao enviar e-mail!</b>
 	 </font></center>
 	 ";
	}
else
	{
	//Alerta sobre os campos obrigatórios
	echo 
  "
  <br><br><center>
  $msg_erro <br><br>
  <a href=\"javascript:window.history.go(-1)\" class=\"links\">Por favor, volte e preencha corretamente.</a>
  </center>
  ";
	}
?>

When the darkness comes true
You nothing can do
Just wait for the Scarce Light
To believe in a Lie once again

=======================================

Imagens na assinatura não são permitidas. Leia as regras...
http://forum.wmonlin...?showtopic=8856

=======================================
Web Slayers

#4 dlemes

dlemes

    Normal

  • Usuários
  • 73 posts
  • Sexo:Não informado

Posted 03/11/2005, 22:39

Achei 2 erros...
a variavel $mail_header não existe, la no teu código só tem $headers
if (@ mail ($mail_destino, $assunto, $msg, $mail_header))
 {
 //Imprimindo confirmação de envio
 echo 
  "
  <html>
  <meta http-equiv=refresh content=5;URL=contato.html></html>";
  echo "$nome, sua mensagem:<br> $mensagem <br>.Foi enviada com sucesso!<br>";
  echo "Obrigado!<br><br>
  ";
aqui tem um erro na função mail... a ordem dos fatores altera o produto..
mesmo colocando na ordem correta sobre uma variavel
@mail ($email,"Re: $assunto",$msg_reply,$mail_msg,$headers,);
 //Enviando mensagem de confirmação para o email do internauta
 @ mail ($headers,$email,"Re: $assunto",$msg_reply,$mail_msg);
 }
 else
 echo

--------------------------------------------------
email: dlemes[ARROBA]gmail.com
precisando de um sistema de e-commerce em php?
www.dlemes.com.br/loja25b

#5 Dekhan

Dekhan

    Novato no fórum

  • Usuários
  • 9 posts
  • Sexo:Não informado
  • Localidade:Curitiba

Posted 04/11/2005, 09:35

Ae pessoal, consegui o que eu precisava, me bati muito e quase coloquei outra questão aki, mas achei melhor eu me bater por conta propria e aprender duma vez essa coisa ^^

vamos às correções freitas, analizadas, inseridas, e etc:

Config.php:

Aquela variavel que não existia Dlemes, na vdd, no codigo original ela existia, porém ela só me dava a mensagem do mail, eu fui trocar o nome para ver se nao era algum conflito com a $headers, mas entao não funcionava em nada (na questão q copiei o codigo acima eu esqueci de alterar a $mail_header para $mail_msg)

ae então coloquei o código $Headers e nao tinha crito q fizesse funcinar, agora tentei "Mesclar" a $headers e $mail_header em uma variavel só, e finalmente funcionou... (é fda ser leigo, mas é ótimo ser persistente)

Para quem precisar tb, ta ae o código inteiro prontinho para ser usado ^^


Config.php:

/*
* Configurações do formulário de Contato
* Altere a variavel $mail_destino para o seu email
* 
*/

//Seu email, para onde irao as informações do formulário
$mail_destino  = "meunome@servidor.com.br";

$assunto = "Coloque aqui o assunto do email";

//Mensagem de cabeçalho do email
$mail_header = "MIME-Version: 1.0\n";
$mail_header .= "Content-type: text/html; charset=iso-8859-1\n";
$mail_header .= "From: Seu Nome <$mail_destino> \n";

$mail_header .= "Seu pedido pelo formulário do site www.meusite.com.br foi enviado com sucesso, entraremos em contato assim que possivel.\n Obrigado";



//Mensagem para o email de resposta
$msg_reply = "Seu pedido foi enviado, Logo entraremos em contato";

//Mensagem de Erro
$msg_erro 	 = "Atenção!! Os campos <font color=$cor_site><b>Nome, Telefone, e E-mail</b></font> não podem estar em branco.";
?>

email.php:

 <?php

include("config.php");

//Testa campos obrigatórios
if ($nome!="" and $DDD!="" and $email!="" and $telefone!="")
	{
	$msg.="Nome: $nome\n";
	$msg.="Endereço: $endereco\n";
	$msg.="Numero: $numero\n";
	$msg.="Complemento: $complemento\n";
	$msg.="Cidade: $cidade\n";
	$msg.="UF: $UF\n";
	$msg.="E-mail: $email\n";
	$msg.="DDD: $DDD\n";
	$msg.="Telefone: $telefone\n";
	$msg.="$mensagem\n";
	
	if (@ mail ($mail_destino, $assunto, $msg, $mail_header))
  {
  //Imprimindo confirmação de envio
  echo 
 	 "
 	 <html>
 	 <meta http-equiv=refresh content=5;URL=contato.html></html>";
 	 echo "$nome, sua mensagem:<br> $mensagem <br>.Foi enviada com sucesso!<br>";
 	 echo "Obrigado!<br><br>
 	 ";
  //Enviando mensagem de confirmação para o email do internauta
  @ mail ($email, "RE: $assunto", $msg_reply, $mail_header);
  }
  else
  echo
 	 "
 	 <meta http-equiv=refresh content=5;URL=contato.html>
 	 </html><center><br><br><font color=red>
 	 <b>Erro ao enviar e-mail!</b>
 	 </font></center>
 	 ";
	}
else
	{
	//Alerta sobre os campos obrigatórios
	echo 
  "
  <br><br><center>
  $msg_erro <br><br>
  <a href=\"javascript:window.history.go(-1)\" class=\"links\">Por favor, volte e preencha corretamente.</a>
  </center>
  ";
	}
?>

E claro, o formulário de email:

email_form.php

<script language="JavaScript" type="text/JavaScript">
<!--
function MM_findObj(n, d) { //v4.01
  var p,i,x;  if(!d) d=document; if((p=n.indexOf("?"))>0&&parent.frames.length) {
    d=parent.frames[n.substring(p+1)].document; n=n.substring(0,p);}
  if(!(x=d[n])&&d.all) x=d.all[n]; for (i=0;!x&&i<d.forms.length;i++) x=d.forms[i][n];
  for(i=0;!x&&d.layers&&i<d.layers.length;i++) x=MM_findObj(n,d.layers[i].document);
  if(!x && d.getElementById) x=d.getElementById(n); return x;
}

function MM_validateForm() { //v4.0
  var i,p,q,nm,test,num,min,max,errors='',args=MM_validateForm.arguments;
  for (i=0; i<(args.length-2); i+=3) { test=args[i+2]; val=MM_findObj(args[i]);
    if (val) { nm=val.name; if ((val=val.value)!="") {
      if (test.indexOf('isEmail')!=-1) { p=val.indexOf('@');
        if (p<1 || p==(val.length-1)) errors+='- '+nm+' must contain an e-mail address.\n';
      } else if (test!='R') { num = parseFloat(val);
        if (isNaN(val)) errors+='- '+nm+' must contain a number.\n';
        if (test.indexOf('inRange') != -1) { p=test.indexOf(':');
          min=test.substring(8,p); max=test.substring(p+1);
          if (num<min || max<num) errors+='- '+nm+' must contain a number between '+min+' and '+max+'.\n';
    } } } else if (test.charAt(0) == 'R') errors += '- '+nm+' is required.\n'; }
  } if (errors) alert('The following error(s) occurred:\n'+errors);
  document.MM_returnValue = (errors == '');
}
//-->
</script>
<form name="form1" method="post" action="email.php">
  <table width="100" border="0" cellspacing="0" cellpadding="0" align="center">
    <tr bgcolor="#F4F4F4"> 
      <td valign="top" width="100" nowrap><font size="2" face="Verdana, Arial, Helvetica, sans-serif" class="texto">Nome:</font></td>
      <td> <input name="nome" type="text" class="form_campos" onBlur="MM_validateForm('nome','','R','DDD','','RisNum','telefone','','RisNum','email','','RisEmail','numero','','NisNum');return document.MM_returnValue" size="34" maxlength="50"> 
      </td>
    </tr>
    <tr bgcolor="#EFEFEF"> 
      <td valign="top" nowrap><font size="2" face="Verdana, Arial, Helvetica, sans-serif">Telefone</font></td>
      <td>( <input name="DDD" type="text" id="DDD" size="3" maxlength="3">
        )- <input name="telefone" type="text" id="telefone" size="9" maxlength="9"></td>
    </tr>
    <tr bgcolor="#EFEFEF"> 
      <td valign="top" nowrap><font size="2" face="Verdana, Arial, Helvetica, sans-serif" class="texto">E-mail:</font></td>
      <td><input class="form_campos" type="text" name="email" size="34"></td>
    </tr>
    <tr bgcolor="#EFEFEF">
      <td valign="top" nowrap><font size="2" face="Verdana, Arial, Helvetica, sans-serif">Endere&ccedil;o:</font></td>
      <td><input name="endereco" type="text" id="endereco" size="20" maxlength="50">
        n&ordm; <input name="numero" type="text" id="numero" size="4" maxlength="10"> 
      </td>
    </tr>
    <tr bgcolor="#EFEFEF"> 
      <td valign="top" nowrap><p><font size="2" face="Verdana, Arial, Helvetica, sans-serif"> Complemento:</font></p></td>
      <td> 
        <input name="complemento" type="text" id="complemento" size="20" maxlength="20"></td>
    </tr>
    <tr bgcolor="#EFEFEF"> 
      <td valign="top" width="100" nowrap><font size="2" face="Verdana, Arial, Helvetica, sans-serif" class="texto">Cidade:</font></td>
      <td> <input name="cidade" type="text" class="form_campos" size="20" maxlength="50"> 
        <font class="texto">UF: 
        <input name="UF" type="text" class="form_campos" id="UF" size="2" maxlength="2">
        </font> </td>
    </tr>
    <tr bgcolor="#F4F4F4"> 
      <td valign="top" width="100" nowrap><font size="2" face="Verdana, Arial, Helvetica, sans-serif">Mensagem:</font></td>
      <td><textarea class="form_campos" name="mensagem" cols="34" rows="4"></textarea> 
      </td>
    </tr>
    <tr bgcolor="#F4F4F4"> 
      <td colspan="2" valign="middle"> <br> <div align="center"> 
          <input class="form_botao" type="submit" name="Enviar" value="Enviar Mensagem">
          <input class="form_botao" type="reset" name="Limpar" value="Limpar">
        </div></td>
    </tr>
  </table>
</form>


Muito Obrigado à todos

vlw mesmo
When the darkness comes true
You nothing can do
Just wait for the Scarce Light
To believe in a Lie once again

=======================================

Imagens na assinatura não são permitidas. Leia as regras...
http://forum.wmonlin...?showtopic=8856

=======================================
Web Slayers




1 user(s) are reading this topic

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

IPB Skin By Virteq