Ir para conteúdo

POWERED BY:

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

Carlos Vital

não tá enviando com a função mail()

Recommended Posts

oi galera tudo bem?não estou conseguindo enviar email usando a função mail().mesmo minha hospedagem tendo POP3 Email.eu já tentei um monte de scripts, fui no php.net e vi que meus scripts nã tem erro algum.vocês tem alguma idéia do que seja?

Compartilhar este post


Link para o post
Compartilhar em outros sites

ao código ai:e o mesmo código de exemplo que tem no php.net, eu apenas o configurei de acordo com o que eu queria.-----------------------------------------------------------------------------------------------------------------------------<?php/* Destinatário */$to = "carlaohsv@yahoo.com.br" . ", " ; // Observe a vírgula/* assunto */$subject = "carlos";/* mensagem */$message = 'mensagem';/* Atenção se você pretende inserir numa variável uma mensagem html mais complexa do que essa sem precisar escapar os carateres necessários pode ser feito o uso da sintaxe heredoc, consulte tipos-string-sintaxe-heredoc *//* Para enviar email HTML, você precisa definir o header Content-type. */$headers = "MIME-Version: 1.0\r\n";$headers .= "Content-type: text/html; charset=iso-8859-1\r\n";/* headers adicionais */$headers .= "To: carlos <carlaohsv@yahoo.com.br>\r\n";$headers .= "From: carlos <carlaohsv@yahoo.com.br>\r\n";/* Enviar o email */mail($to, $subject, $message, $headers);?>

Compartilhar este post


Link para o post
Compartilhar em outros sites

faça um teste com um e-mail comum, saem HTML:

 

<?php

$para = "seu_email";

$assunto = "Teste de envio de e-mail";

$mensagem = "Se chegar é por que está funcionando";

$header = "From: Beraldo ";

 

if (mail ($para, $assunto, $mensagem, $header))

echo "sucesso!";

else

echo "Erro";

?>

veja se assim funciona. Se não funcionar, deve ser problema do servidor ou do e-mail.

Compartilhar este post


Link para o post
Compartilhar em outros sites

AEee!!!

 

Tive um problema igual!!

Não enviava o email pelo simples MAIL();

 

Precisava especificar o SMTP..

 

Utiliza esse tópico http://forum.imasters.com.br/index.php?sho...mp;hl=mail+html

Consegui fazer funcionar!!

 

 

Abraço

DaviMM

http://www.davimm.com

Compartilhar este post


Link para o post
Compartilhar em outros sites

Existem basicamente 2 maneiras de se enviar um e-mail de um servidor (pelo menos dos Linux), uma delas é utilizando o sendmail, que é um comandinho do linux. A outra é usando um serviço de SMTP (porta 25).A função mail() do PHP envia as mensagens pelo sendmail da máquina. O sendmail, por razões de segurança, é desabilitado em alguns servidores (como parece ser o seu caso). Nesses casos você deve mandar via SMTP mesmo. E aí você pode mandar pelo SMTP de outro servidor, um q aceite RELAY. Mas essa é outra história.Isso pode pelo menos explicar pq não funcionou com mail().

Compartilhar este post


Link para o post
Compartilhar em outros sites

EU tow com problemas com a função mail...olha só:<?$to = "Danielle <eu@servidor.com>";$header1 = "From: ".$_POST['email'];$corpo = "Nome: ".$_POST['nome']."\n\n";$corpo .= "Departamento: ".$_POST['dep']."\n\n";$corpo .= "Fone: ".$_POST['fone']."\n\n";$corpo .= $_POST['corpo'];if (mail($to, '(site) - Mensagem de '.$_POST['nome'], $corpo, $header1)) echo "&msg=Mensagem enviada com sucesso";else echo "&msg=Problema no envio";?>PS: esse código eu não consigo mandar um e-mail..sequer da pág.Se vcs puderem me ajudar...

Compartilhar este post


Link para o post
Compartilhar em outros sites

mail($to, "(site) - Mensagem de ".$_POST['nome'], $corpo, $header1)Tente com as apas duplas.Você está mandando de um servidor local ?

Compartilhar este post


Link para o post
Compartilhar em outros sites

mail($to, "(site) - Mensagem de ".$_POST['nome'], $corpo, $header1)Tente com as apas duplas.Você está mandando de um servidor local ?

Naum..quer dizer eu num sei...eu utilizo o SSH para trasferir os arquivos novos.Naum deu certo....aparece indefinido e antes aparecia a msg certa.E ainda ele só identificava o remetente se ele fosse igual ao destinatário.Sei o q fazer naum..aff

Compartilhar este post


Link para o post
Compartilhar em outros sites

Não entendi direito. O código funcionava? Tenha calma hehe

 

Tenta executar o seguinte código e ve se funciona:

 

<?phpmail("teu@email.com", "Assunto", "Mensagem", "From:email@servidor.com");?>

Não esquece de alterar o teu email e o endereço que envia.

 

Se persistir não funcionando o problema é no servidor.

Compartilhar este post


Link para o post
Compartilhar em outros sites

<?$header1 = "From: ".$_POST['email'];$corpo = "Nome: ".$_POST['nome']."\n\n";$corpo .= "Departamento: ".$_POST['dep']."\n\n";$corpo .= "Fone: ".$_POST['fone']."\n\n";$corpo .= $_POST['corpo'];if (mail(email@servidorcom', '(site) - Mensagem de '.$_POST['nome'], $corpo, $header1)) echo "&msg=Mensagem enviada com sucesso";else echo "&msg=Problema no envio";?>esse era o q tava no inicio...mas lembra q eu tow usando no dreamweaver...

Compartilhar este post


Link para o post
Compartilhar em outros sites

Alterando apenas a variável $email_to esse código funciona O.o

 

<?$email_to = "teu@endereco.com";$header1 = "From: ".$_POST['email'];$corpo = "Nome: ".$_POST['nome']."\n\n";$corpo .= "Departamento: ".$_POST['dep']."\n\n";$corpo .= "Fone: ".$_POST['fone']."\n\n";$corpo .= $_POST['corpo'];if (mail($email_to, "(site) - Mensagem de ".$_POST['nome'], $corpo, $header1))echo "&msg=Mensagem enviada com sucesso";else echo "&msg=Problema no envio";?>

Compartilhar este post


Link para o post
Compartilhar em outros sites

Ai pessoal. No trabalho eu mando e-mail com a função mail() facinho facinho, mas em casa reclama de porta, talvez possa ser tbm o problema de vcs. Li no forum alguns comandos para serem alterados no PHP.ini, segue abaixo:

 

Se ainda nao der certo.... tem algumas configurações do smtp no php.ini

 

CODE

[mail function]

; For Win32 only.

SMTP = smtp.smtpvalido.com

smtp_port = 25

 

; For Win32 only.

;sendmail_from = fulano@fulano.com

 

; For Unix only. You may supply arguments as well (default: "sendmail -t -i").

;sendmail_path =

 

; Force the addition of the specified parameters to be passed as extra parameters

; to the sendmail binary. These parameters will always replace the value of

; the 5th parameter to mail(), even in safe mode.

;mail.force_extra_parameters =

 

A font em que busquei essa informação foi: http://forum.imasters.com.br/index.php...t=#entry1169611

 

Tentem resolver o problema da porta.

 

Abraços.

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.