Ir para conteúdo
Fórum Script Brasil
  • 0

Função Mail


richenrique

Pergunta

10 respostass a esta questão

Posts Recomendados

  • 0

Posso responder uma pergunta:

Sim... tem como rodar localmente, eu sei q tem umas configurações que você tem q alterar no php.ini... quanto a tutorial.. isso eu já não sei.. mas faz uma busca lá no php.net sobre a função mail()... talvez ajude...

(Se alguém tiver como esclarecer mais isso ai eu também to interessado.. hehehehe)...

falou

Link para o comentário
Compartilhar em outros sites

  • 0
Guest - Sophie -

Sim, se instalar um servidor de stmp.

Eu tou em windows e uso o hmailserver, só tem de configurar o servidor (geralmente tem um help pra isso no próprio programa) e no php.ini só tem de dizer o nome do servidor (provavelmente localhost) e o sendmail_from (um endereço de email). Eu uso só para testes, nas funciona.

Link para o comentário
Compartilhar em outros sites

  • 0
Guest - Sophie -

Abre o hmailserver administrator.

1. Precisa de definir o nome do servidor em:

Settings -> Protocols -> SMTP -> Delivery of e-mail

Onde está "Host name" põe localhost, deixe o tcp port no default (25) e o resto não precisa de mudar nada.

2. Configurar um domínio. Digamos que quer enviar seus emails a partir do seguinte email: teste_de_envio@minhacasa.com. Vai pôr um novo domínio chamado minhacasa.com.

Clica com o botão direito do rato em "domains" e faz "add domain". No "Domain name" escreve minhacasa.com. Não precisa de pôr o catch-all adress pois não vai utilizar o POP3.

Aparece um novo domínio no menu da esquerda com um ícone de uma casinha.

3. Fazer pelo menos uma account. Tem de fazer a account "teste_de_envio@minhacasa.com". Clica no novo domínio que fez para expandir as opções e clica com o botão direito do rato em "accounts" e faz "add account". Em address põe teste_de_envio, escreve a password (se tiver), e o resto deixa os defaults.

Agora só o php só tem de saber que existe um servidor na sua máquina.

Abre o php.ini e procura a seguinte secção:

[mail function]

; For Win32 only.

SMTP = localhost

; For Win32 only.

sendmail_from = teste_de_envio@minhacasa.com

Esse email aí tem de existir configurado no servidor.

Agora só tem de reiniciar o Apache e testar a função mail(). Não se esqueça de pôr os header certinhos, um exemplo:

$headers  = "MIME-Version: 1.0\r\n";
$headers .= "Content-type: text/html; charset=iso-8859-1\r\n";
$headers .= "To: teste_de_envio@minhacasa.com <Teste de Envio>\r\n";
$headers .= "From: teste_de_envio@minhacasa.com\r\n";
$headers .= "Return-Path: teste_de_envio@minhacasa.com\r\n";
$headers .= "Reply-To: teste_de_envio@{$_SERVER['SERVER_NAME']}\r\n";

Espero que ajude

Link para o comentário
Compartilhar em outros sites

  • 0

COMO QUE EU FAÇO PARA A PESSOA FAZER O CADASTRO NO MEU SITE E AUTOMATICAMENTE QUANDO ELA FIZER O CADASTRO MANDA UM E-MAIL MEU PARA ELA DE CONFIRMAÇÃO AI ELA SO CONSEGUE ACESSAR AS COISAS C ELA CONFIRMAR O CADASTRO ENTRANDO NO E-MAIL DELA ??? PODE ME AJUDAR alguém ...

Link para o comentário
Compartilhar em outros sites

  • 0
Guest pode me ajudar ?
Abre o hmailserver administrator.

1. Precisa de definir o nome do servidor em:

Settings -> Protocols -> SMTP -> Delivery of e-mail

Onde está "Host name" põe localhost, deixe o tcp port no default (25) e o resto não precisa de mudar nada.

2. Configurar um domínio. Digamos que quer enviar seus emails a partir do seguinte email: teste_de_envio@minhacasa.com. Vai pôr um novo domínio chamado minhacasa.com.

Clica com o botão direito do rato em "domains" e faz "add domain". No "Domain name" escreve minhacasa.com. Não precisa de pôr o catch-all adress pois não vai utilizar o POP3.

Aparece um novo domínio no menu da esquerda com um ícone de uma casinha.

3. Fazer pelo menos uma account. Tem de fazer a account "teste_de_envio@minhacasa.com". Clica no novo domínio que fez para expandir as opções e clica com o botão direito do rato em "accounts" e faz "add account". Em address põe teste_de_envio, escreve a password (se tiver), e o resto deixa os defaults.

Agora só o php só tem de saber que existe um servidor na sua máquina.

Abre o php.ini e procura a seguinte secção:

[mail function]

; For Win32 only.

SMTP = localhost

; For Win32 only.

sendmail_from = teste_de_envio@minhacasa.com

Esse email aí tem de existir configurado no servidor.

Agora só tem de reiniciar o Apache e testar a função mail(). Não se esqueça de pôr os header certinhos, um exemplo:

$headers  = "MIME-Version: 1.0\r\n";
$headers .= "Content-type: text/html; charset=iso-8859-1\r\n";
$headers .= "To: teste_de_envio@minhacasa.com <Teste de Envio>\r\n";
$headers .= "From: teste_de_envio@minhacasa.com\r\n";
$headers .= "Return-Path: teste_de_envio@minhacasa.com\r\n";
$headers .= "Reply-To: teste_de_envio@{$_SERVER['SERVER_NAME']}\r\n";

Espero que ajude

pow você pode me ajudar a fazer um sistema desses ? meu MSN é alexandrin157@gmail.com URGENTE PLS

Link para o comentário
Compartilhar em outros sites

  • 0

sei que passou 3 anos apos esse post mas aqui deu esse erro :(

Warning: mail(): SMTP server response: 550 A valid address is required. in

eu instalei do geito que fez mas não sei se é porque estou usando um serve

Esse Código é como esta no meu webSite tem alguma coisa errada nesse código???? porque fica dando o erro

Warning: mail(): SMTP server response: 550 A valid address is required. in

e não sei porque eu toh usando um serve atravez de um router será que evez de localhost colocar o ENDEREÇO de IP da maquina do serve????

// Envia o e-mail para a pessoa.

$assunto = "Ativação de Conta MuDF..."; // Assunto do E-mail.

$fname = "MuDarkFox"; // Nome do seu site.

$femail = "confirmacao@mudarkfox.com"; // E-mail do seu site.

$destino = "\"$ps_loginname\" <$ps_email>"; // Login e o email da pessoa que se cadastrou.

$confirmail = ' 
<p><font size="2" face="Verdana, Arial, Helvetica, sans-serif">Ola '.$login.'!</p>
<p>Abaixo está o seu codigo de confirmação:</p>
<p><strong><a href="http://www.mudarkfox.com/validar.php?chave='.$chave.'">http://www.mudarkfox.com/validar.php?chave='.$chave.'</a></strong></p>
<p>Entre neste endereço para ativar o seu cadastro.</p>
<p>Atenciosamente, Seu Site.</p>
</font></p>'; // Mensagem que vai para a pessoa.

$headers  = "MIME-Version: 1.0\r\n";

$headers .= "Content-type: text/html; charset=iso-8859-1\r\n";

$headers .= "From: \"$fname\" <$femail>\r\n";

if (!mail($destino, $assunto, $confirmail, $headers))

// Fim do código.

?>

Link para o comentário
Compartilhar em outros sites

  • 0

aqui eu instalei tudo e tal, uso esse código pra mandar um email, só pra testar

<?
$headers  = "MIME-Version: 1.0\r\n";
$headers .= "Content-type: text/html; charset=iso-8859-1\r\n";
$headers .= "To: hrmele@gmail.com <Teste de Envio>\r\n";
$headers .= "From: contato@fuxiqueiro.com\r\n";
$headers .= "Return-Path: contato@fuxiqueiro.com\r\n";
$headers .= "Reply-To: contato@fuxiqueiro.com\r\n";
$sent = mail("hrmele@gmail.com","teste","teste",$headers);
if ($sent)
echo "foi";
else
echo "erro";
?>

mas não vai.. aparece na tela FOI, mas não recebo o email..

tentei mandar pro hotmail, gmail, terra, nada..

nem na caixa de spam

alguém sabe o qe pode tá errado? segui o qe o cara falo lá em cima

Link para o comentário
Compartilhar em outros sites

Participe da discussão

Você pode postar agora e se registrar depois. Se você já tem uma conta, acesse agora para postar com sua conta.

Visitante
Responder esta pergunta...

×   Você colou conteúdo com formatação.   Remover formatação

  Apenas 75 emoticons são permitidos.

×   Seu link foi incorporado automaticamente.   Exibir como um link em vez disso

×   Seu conteúdo anterior foi restaurado.   Limpar Editor

×   Você não pode colar imagens diretamente. Carregar ou inserir imagens do URL.



  • Estatísticas dos Fóruns

    • Tópicos
      152,3k
    • Posts
      652,4k
×
×
  • Criar Novo...