Guest --solange -- Postado Agosto 2, 2007 Denunciar Share Postado Agosto 2, 2007 Oi pessoal, como faço para mandar email pelo php?utilizo a função mail, passando os dados , exemplo:$mail_to = 'meunome@@gmail.com'; $mail_from = 'nomesetor@uol.com.br'; // $_POST['email']; $mail_reply_to = ''; //$_POST['email']; $mail_cc = 'novaliberdade@itelefonica.com.br'; $mail_bcc = ''; $mail_sub = 'Fale conosco, dúvida ou sugestão:'; $mail_subject = stripslashes($mail_subject); $mail_body = stripslashes($mail_body); $mail_headers .= "Content-type: text/html; charset=us-ascii\r\n"; $mail_headers .= "Content-transfer-encoding:8bit\r\n\r\n"; /return mail($mail_to,$mail_subject,$mail_body,$mail_headers);Não consigo fazer o email funcionar, mas também não aparece nenhuma mensagem de erro :blink: .Estou trabalhando em ambiente Novell com PHP5 e apache 2.Tem alguma configuração que deve ser feita para que o envio de email funcione?Obrigada Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 itibere Postado Agosto 2, 2007 Denunciar Share Postado Agosto 2, 2007 você tem algum servidor de email configurado. Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 Guest --solange -- Postado Agosto 2, 2007 Denunciar Share Postado Agosto 2, 2007 Tenho sim. Mas não tenho acesso, isso só com o administrador da rede. O Grupo Wise (servidor email) está na mesma máquina que a programacao.Gostaria de saber o que tenho de confirgurar para poder passar para ele (administrador). Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 itibere Postado Agosto 2, 2007 Denunciar Share Postado Agosto 2, 2007 qual o servidor, se for o send mail, o php funciona normalmente, se for outro , você vai ter que fazer as configurações necessárias no php. Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 ESerra Postado Agosto 2, 2007 Denunciar Share Postado Agosto 2, 2007 Para a mail funcionar tem que configurar ela no php.ini, já existem tópicos sobre isso aqui no fórum... Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 Dr. Gap Postado Agosto 2, 2007 Denunciar Share Postado Agosto 2, 2007 sinceramente, eu uso o XPM2 pra mandar emails, ele facilita bastante a configuracao desses parametros, é leve e tem uma otima documentacao... http://www.xpertmailer.com/DOC/ Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 Guest --solange -- Postado Agosto 2, 2007 Denunciar Share Postado Agosto 2, 2007 Olá itibere, o que deveria configuar no PHP? E onde fica?Obrigada mais uma vez pela ajudaAh! Dr. Gap Vou dar uma olhada no XPM2 sim, obrigada também. Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 itibere Postado Agosto 3, 2007 Denunciar Share Postado Agosto 3, 2007 Olá itibere, o que deveria configuar no PHP? E onde fica?Obrigada mais uma vez pela ajudaAh! Dr. Gap Vou dar uma olhada no XPM2 sim, obrigada também.Procure por isso no php.ini[mail function]; For Win32 only.SMTP = localhost; For Win32 only.sendmail_from = me@localhost.com; For Unix only. You may supply arguments as well (default: 'sendmail -t -i').;sendmail_path =Se você não estiver usando o sendmail, tem que colocar o caminho do seu servidor de e-mail em sendmail_path =, se você configurar sendemail, não vai precisar fazer nada, o php usa o sendmail por default Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 Guest --solange -- Postado Agosto 3, 2007 Denunciar Share Postado Agosto 3, 2007 Itibere, valeu pela dica...Obrigada :lol: Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 Guest --solange -- Postado Agosto 3, 2007 Denunciar Share Postado Agosto 3, 2007 Desculpe, só mas não funcionou.E mail não chega.meu php.iniestá assim[mail function]; For Win32 only.SMTP = OEM --> va lembar que já coloquei o endereço aqui etambém não funcionousmtp_port = 25; For Win32 only.sendmail_from = ;sendmail_path = ; For Unix only. You may supply arguments as well (default: "sendmail -t -i").sendmail_path = mail.empresa.com.brJá tentei colocar o número do ipMas aind assim não funciona.Não sei se tem alguma mais alguma coisa a configurar por ser novell.o servidor de email é grupo wiseutilizo apache e php 5.02se alguém tiver mais alguma dica..... Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 itibere Postado Agosto 3, 2007 Denunciar Share Postado Agosto 3, 2007 voce colocou e-mail;mail.empresa.com.brVoce tem que colocar o caminho do servidor de email Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 Guest --solange -- Postado Agosto 17, 2007 Denunciar Share Postado Agosto 17, 2007 Olá pessoal, estou retomando aos emails e,não consigo enviar email.meu php.ini está assim[mail function]; For Win32 only.SMTP = [ip do servidor]smtp_port = 25; For Win32 only.sendmail_from = solange@php.com.br; For Unix only. You may supply arguments as well (default: "sendmail -t -i").sendmail_path = [ip do servidor de email]O PHP 5 e o apache 2 estão instalados no novell - netwaree o administrador de rede me solicitou que fizesse uma autenticação no servidor para poder permitir que seja enviado e email.Como devo fazer isto?Algúém tem alguma sugestão? Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 Dr. Gap Postado Agosto 17, 2007 Denunciar Share Postado Agosto 17, 2007 olha eu continuo insistindo pra você usar o XPM2... além de facilitar o envio ele funciona como uma camada de abstração... você não precisa se preocupar com nenhum detalhe do php.ini... sem contar que encapsula uma boa parte de código "chato" e tals... minha experiência de apostar em classes prontas sempre deu certo... um exemplo de como seria o código pra mandar email pelo XPM2$mail = new SMTP; $mail->Delivery('relay'); $mail->Relay('smtp.cescage.edu.br', $username, $password, 465, 'autodetect', true); $mail->From($username);e depois é só colocar assunto e mensagem ou HTML... usando o XPM2 eu consegui mandar email numa instalação crua do PHP+APACHE sem ter que mexer em php.ini e tals... calculo que o XPM2 deve ajeitar as váriaveis do PHP em tempo de execução... vale a pena... sem contar que se você mudar teu script pra algum servidor onde você não tenha acesso ao php.ini o XPM2 já faz o serviço pra você... Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 Guest --solange -- Postado Agosto 17, 2007 Denunciar Share Postado Agosto 17, 2007 Olá Dr. Gap, como funciona?Eu baixei o arquivo phpmailer.zip que vem com dois arquivos:que estão no mesmo diretorio dos programasclass.phpmailer.php e class.smtp.php classJá coloquei o include destes arquivos.O que devo configurar mais?tentei usar o código que você enviou, mas ainda não consegui enviar.obrigada.Vôcê pode indicar algum local que tenha a documentação, o endereco que você passou não consigo acessar. Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 Dr. Gap Postado Agosto 17, 2007 Denunciar Share Postado Agosto 17, 2007 você tá confundindo o XPM2 com o PHPMailer... hehe...o XPM2 você pd baixar do mirror da UFPR nesse linkhttp://ufpr.dl.sourceforge.net/sourceforge...mailer/XPM2.zipa documentação completa e excelente você acha emhttp://www.xpertmailer.com/DOC/e o código não funcionou porque você tá usando o PHPMailer ao invés do XPM2depois de baixar o arquivo XPM2.zip e só descompacta-lo na mesma pasta onde estão os teus scripts que precisam enviar email... um exemplo seria assimrequire_once 'xpm2/smtp.php'; $mail = new SMTP; $username = 'no-reply-noticias@cescage.edu.br'; $password = 'XXXX'; $mail->Delivery('relay'); $mail->Relay('smtp.cescage.edu.br', $username, $password, 465, 'autodetect', true); $mail->From($username); $mail->AddTo('email_destino@yahoo.com.br'); $texto_email = 'Aqui vai a mensagem do corpo do email...'; $mail->Text($texto_email); //pode ser HTML tb $assunto = 'Isto é um teste...'; $send = $mail->Send($assunto); //pronto, já envia o email tem um exemplo legal tb do proprio site // path to smtp.php from XPM2 package require_once '/path/smtp.php'; $mail = new SMTP; $mail->From('me@domain.com'); $mail->AddTo('client@destination.com'); $mail->Text('It is simple to use XPM2'); $sent = $mail->Send('Hello World!'); echo $sent ? 'Success' : 'Error';dai você troca smtp.cescage.edu.br pelo smtp que você vai usar... $username e $password é a o login e senha do email q você estah usando pra enviar emails...ele tb tem funcoes pra verificar se um email é valido e tals... Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 Thiago Top Postado Maio 21, 2008 Denunciar Share Postado Maio 21, 2008 (editado) Se eu adicionar meu e-mail no php.ini,no seu respectivo campo para envio de e-mail, eu consigo envia-lo?Dando um ganxo na duvida da Solange, sobre o sendmail.O local em questao seria:; For Win32 only.;sendmail_from = me@example.comObrigado,[]s, Thiago Editado Maio 21, 2008 por Thiago Top Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 HugoAlmeida Postado Maio 21, 2008 Denunciar Share Postado Maio 21, 2008 (editado) Boas eu tenho um codigo que envia emails... $destino=$_POST['para']; $de=$_POST['de']; $cc=$_POST['cc']; $bcc=$_POST['bcc']; $assunto=$_POST['assunto']; $mensagem=$_POST['mensagem']; $anexo=$_FILES['file']; if($anexo) { $codifica=chunk_split(base64_encode(file_get_contents($anexo['tmp_name']))); } if(mail($destino, $assunto, $msg, $headers)) { echo "Email enviado com sucesso"."<br>"; echo "Ficheiro: " .$_FILES['file']['name']; } else { echo "Erro ao enviar email"; } Editado Maio 21, 2008 por HugoAlmeida Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 Thiago Top Postado Maio 21, 2008 Denunciar Share Postado Maio 21, 2008 Olha, eu tenho um exemplo de uma pagina minha que envia e-mails para um servido,só que é o seguinte, eu queria descobrir como esta pagina envia emails, eu sou novo em PHPestou com um codigo desconhecido, um abacaxi para descascar, =/function send_mail($to, $subject, $body, $fromname, $from) { if (!empty($to)) { if (!mail($to, $subject, stripslashes($body), "From: $fromname <$from>")) die("N<E3>o foi poss<ED>vel enviar o e-mail!"); } }Oque essa funcao faz?Desde já, Obrigado.[]s, Thiago Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 Dinho19sp Postado Maio 22, 2008 Denunciar Share Postado Maio 22, 2008 Olha, eu tenho um exemplo de uma pagina minha que envia e-mails para um servido,só que é o seguinte, eu queria descobrir como esta pagina envia emails, eu sou novo em PHPestou com um codigo desconhecido, um abacaxi para descascar, =/function send_mail($to, $subject, $body, $fromname, $from) { if (!empty($to)) { if (!mail($to, $subject, stripslashes($body), "From: $fromname <$from>")) die("N<E3>o foi poss<ED>vel enviar o e-mail!"); } }Oque essa funcao faz?Desde já, Obrigado.[]s, ThiagoThiago é o seguinte meu chapa..num sou expert mas vou tentar explicar:function send_mail($to, $subject, $body, $fromname, $from) { if (!empty($to)) { if (!mail($to, $subject, stripslashes($body), "From: $fromname <$from>")) die("N<E3>o foi poss<ED>vel enviar o e-mail!"); } }Na linha 1chama a função send_mail;// a qual é encarregada de enviar os emailsNa mesma linha a função seta a Variavel $to = "para";$subject = assunto;$body = corpo da mesagem;$fromname = "Nome de Quem esta enviando";$from = "email de quem esta enviando";linha 2if (!empty($to)) = "verifica se a variavel $to não esta vazia " ! empty"= (diferente de vazio);na terceira linha Faz a mesma verificação em todas a variaveis; se tudo for vazio ele não envia nada ;caso o contrario o email é enviado com sucesso;;Bom acho que é isso..Mas vale a pena você pegar essa função e estuda-la passo a passo ... no site do php. www.php.netAbraços. Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 Dinho19sp Postado Maio 22, 2008 Denunciar Share Postado Maio 22, 2008 Olá Dr. Gap, como funciona?Eu baixei o arquivo phpmailer.zip que vem com dois arquivos:que estão no mesmo diretorio dos programasclass.phpmailer.php e class.smtp.php classJá coloquei o include destes arquivos.O que devo configurar mais?tentei usar o código que você enviou, mas ainda não consegui enviar.obrigada.Vôcê pode indicar algum local que tenha a documentação, o endereco que você passou não consigo acessar.Solange é o seguinte...tive varios problemas com envio de emails... fiz a mesmo coisa que você.procurei scripts, baixei servidor free, coloquei servidor pago e nem tudo dava certo.pois como uso SO Windows xp, php 5 e apache..tudo era embaçado de configurar...mas nas minhas buscas em site e foruns achei um script bala e não tive problema, acredito que funcione com seu server.se não funcionar você testa com qualquer servidor de email da web..tipo ig. yahoo, pois eu uso o da locaweb...so que ele funciona como autenticados de SMPT. vai abaixo a classe e um exemplo:Classe:<? class Smtp{ var $conn; var $user; var $pass; var $debug; function Smtp($host){ $this->conn = fsockopen($host, 25, $errno, $errstr, 30); $this->Put("EHLO $host"); } function Auth(){ $this->Put("AUTH LOGIN"); $this->Put(base64_encode($this->user)); $this->Put(base64_encode($this->pass)); } function Send($to, $from, $subject, $msg){ $this->Auth(); $this->Put("MAIL FROM: " . $from); $this->Put("RCPT TO: " . $to); $this->Put("DATA"); $this->Put($this->toHeader($to, $from, $subject)); $this->Put("\r\n"); $this->Put($msg); $this->Put("."); $this->Close(); if(isset($this->conn)){ return true; }else{ return false; } } function Put($value){ return fputs($this->conn, $value . "\r\n"); } function toHeader($to, $from, $subject){ $header = "Message-Id: <". date('YmdHis').".". md5(microtime()).".". strtoupper($from) ."> \r\n"; $header .= "From: " . $from . " \r\n"; $header .= "To: ".$to." \r\n"; $header .= "Subject: ".$subject." \r\n"; $header .= "Date: ". date('D, d M Y H:i:s O') ." \r\n"; $header .= "X-MSMail-Priority: Low \r\n"; $header .= "MIME-Version: 1.0 \r\n"; $header .= "Content-type: text/html; charset=iso-8859-1\r\n"; return $header; } function Close(){ $this->Put("QUIT"); if($this->debug == true){ while (!feof ($this->conn)) { fgets($this->conn) . "<br>\n"; } } return fclose($this->conn); } } ?> Exemplo de uso: $sql1="select * from configuracoes where 1 and id_usuario = '".$UserID."'"; echo $sql1; $qdf = mysql_query($sql1,$con) or die (mysql_error()); $row = mysql_fetch_array($qdf,MYSQL_ASSOC); if ($email!=""){ include ("email_class.php"); /* Configuração da classe.smtp.php */ $host = "".$row['smtp_user'].""; /*host do servidor SMTP */ $smtp = new Smtp($host); $smtp->user = "".$row['email_princ'].""; /*usuario do servidor SMTP */ $smtp->pass = "".base64_decode($row['senha']).""; /* senha dousuario do servidor SMTP*/ $smtp->debug = true; /* ativar a autenticação SMTP*/ Citar Link para o comentário Compartilhar em outros sites More sharing options...
Pergunta
Guest --solange --
Link para o comentário
Compartilhar em outros sites
19 respostass a esta questão
Posts Recomendados
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.