Ir para conteúdo

Arquivado

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

webdibula

email

Recommended Posts

boa tarde pessoal,

 

estou tentando terminar um sisteminha aqui de envio de e-mails para todos clientes cadastrados no meu bd. esta enviando mas apenas para todos selecionados mas aparece apenas o titulo como nobody e sem o conteúdo.

 

vou postar abaixo os dois arquivos para que vcs analisem e tentem me ajudar, acho q o erro

 

envio.php

<html>

<head>

<title>Documento sem título</title>

<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">

</head>

 

<body>

<?

 

 

// primeiramente eu conecto com o banco mysql para mostrar o que eu quero mandar no meu email

require_once("conecta.php");

 

//seleciono a tabela onde tem os campos que quero enviar no email

$result = mysql_query("SELECT * FROM tbl_noticias ORDER BY id DESC Limit 0,1");

//$result = mysql_query("SELECT * FROM tbl_noticias WHERE id = '$id'");

 

// converto para linhas, ate aqui tudo facil

while ($linha = mysql_fetch_array($result)){

$id = $linha["id"];

$titulo = strtoupper($linha['titulo']);

$descricao = $linha["descricao"];

$fonte = $linha["fonte"];

$foto = $linha["foto1"];

 

 

 

// agora crio meu formulario onde tera os campos NOME e EMAIL do REMETENTE e o NOME e EMAIL do destinatario

 

echo "<div align='center'>";

 

echo "<form name='form1' method='POST' action='enviaemail1.php'>";

 

echo "<table align='center' border='0' aligne='center'>";

 

// estes tres campos ficam ocultos (hidden) para poderem enviar para o ENVIAEMAIL os dados do muysql que formarão o corpo do meu email

echo "<input type='hidden' name='id' value='$id'>";

echo "<input type='hidden' name='titulo' value='$titulo'>";

echo "<input type='hidden' name='descricao' value='$descricao'>";

//echo "<input type='hidden' name='fonte' value='$fonte'>";

 

 

 

echo "<br>";

 

echo "<tr>";

echo "<td colspan='2'><div align='left'><font face='verdana' size='2'>DE:</font></div></td>";

echo "</tr>";

 

echo "<tr>";

echo "<td width='90'><font face='verdana' size='2'>Seu Nome:</font></td>";

echo "<td width='120'><font face='verdana' size='2'><input name='nomede' size='30' type='text'></font></td>";

echo "</tr>";

 

echo "<tr>";

echo "<td width='90'><font face='verdana' size='2'>Seu Email:</font></td>";

echo "<td width='120'><font face='verdana' size='2'><input name='emailde' size='20' type='text'></font></td>";

echo "</tr>";

 

echo "<tr>";

echo "<td colspan='2'>...........................................................................</td>";

echo "</tr>";

echo "<tr>";

?>

<?php

//Executa a consulta

 

//seleciono a tabela onde tem os campos que quero enviar no email

$result = mysql_query("SELECT * FROM tbl_contato ORDER BY email");

//$result = mysql_query("SELECT * FROM tbl_noticias WHERE id = '$id'");

echo "<table width=350 border=0 bordercolor='#ffffff' cellpadding='1' cellspacing='1'><tr>"; #comeca tabela

$aux = 0;

// converto para linhas, ate aqui tudo facil

while ($linha = mysql_fetch_array($result)){

$id = $linha["id"];

$email = $linha["email"];

if($aux == 1){ #se for 3 é porque passou 3 colunas, dae faz quebra de linha

$aux = 0; #zera a AUX pra contar novamente 3 colunas

echo "</tr><tr>"; #quebra de linha

}

echo "<td width=100 bordercolor='#F4F4F4' align='center' valign='middle'><input type='checkbox' name='emailpara' value='".$email."'></td><td>".$email."</td>"; #escreve o item normal

$aux++; #soma mais 1 em aux

}

?>

<?

echo "</tr>";

echo "<tr>";

echo "<td colspan='2'><div align='center'><input name='Enviar' size='20' type='submit' value='Enviar'><input name='button' type='button' onClick='self.close()' value='Fechar'></div></td>";

echo "</tr>";

echo "</table>";

echo "</form>";

 

echo "</div>";

}

?>

</body>

</html>

 

 

enviaemail1.php

<html>

<head>

<title>Documento sem título</title>

<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">

</head>

 

<body background='#00923F'>

<?

 

//recebo do formulario os campos que estavam ocultos, mais os campos do formulario NOME email, NOME DO DESTINATARIO E EMAIL DO DESTINATARIO

 

 

$espaco = "..\n";

$nomede = $_POST["nomede"];

$emailde = $_POST["emailde"];

$nomepara = $_POST["nomepara"];

$emailpara = $_POST["emailpara"];

$titulo = $_POST["titulo"];

$descricao = $_POST["descricao"];

$id = $_POST["id"];

 

 

//AQUI QUE ESTA O SEGREDO que envia toda a pagina em html para o email destino

 

 

//envia no formato html (importante sem esses dois comandos seu email fica todo bagunçado)

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

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

 

 

// aqui informa para o servidor (hotmail, bol) quem ta mandando e quem ta recebendo o email

$cabecalho .= "From: ".$emailde." <".$emailde.">\r\n";

$cabecalho .= "To: ".$emailpara." <".$emailpara.">\r\n";

 

// esse comando é para dar prioridade a mensagem, neste caso uso 1 para chegar mais rapido, o 2 demora mais um pouco

$cabecalho .= "X-Priority: 1\r\n";

 

 

 

// agora aqui esta o corpo do email que formara todo o email em html, observe que os campos do formulario estão todos montados no seu respectivo lugar.

 

 

$corpo .= "

<html>

<head>

<title>www.meusite.com.br</title>

</head>

<style type='text/css'>

@import url(../estilo1.css);

body {

background-image: url();

background-color: #00923F;

}

body,td,th {

font-family: Arial, Helvetica, sans-serif;

font-size: 12px;

}

a:link {

color: #ffffff;

text-decoration: none;

}

a:visited {

color: #ffffff;

text-decoration: none;

}

a:hover {

color: #ffffff;

text-decoration: none;

}

a:active {

text-decoration: none;

}

 

</style>

 

<body>

 

<table width='100%' height='100%' border='0' cellpadding='0' cellspacing='0' background='#00923F'>

<tr>

<td align='center' valign='top'>

 

<table width='778' border='0' cellpadding='0' cellspacing='0'>

<tr>

<td colspan='2'><img src='http://www.meusite.com.br/php/email.jpg' width='778' height='150'></td>

</tr>

<tr>

<td width='50%' height='25' align='left' bgcolor='#02461F'><font color='#02461F'>...</font><font color='#ffffff'>Notícia nº: $id</font></td>

<td width='50%' align='right' bgcolor='#02461F'><a href='http://www.meusite.com.br/noticias.php' target='_blank'>Notícias Anteriores </a><span class='style13'>...</span> </td>

</tr>

</table>

<table width='778' border='0' cellpadding='10' cellspacing='0'>

<tr>

<td height='400' align='center' valign='top' bgcolor='#FFFFFF'><span class='style10'>

</span>

<table width='600' border='0'>

<tr>

<td align='left' valign='top'>

<?php

<b>$titulo</b><p>

$descricao

</span></td>

</tr>

</table>

<span class='style10'> </span></td>

</tr>

</table>

<table width='778' height='10' border='0' cellpadding='0' cellspacing='0'>

<tr>

<td height='25' valign='middle' bgcolor='#00481D'><div align='center'><font color='#ffffff'>RESOLUÇÃO MEDICINA DO TRABALHO - CAXIAS DO SUL - RS - WWW.RESOLUCAOCAXIAS.COM.BR</font></span></div></td>

</tr>

</table></td>

</tr>

</table>

<br>

<center>Caso você não consiga visualizar este e-mail <a href='http://www.meusite.com.br/email/email.php?id=$id' target='_blank'>clique aqui</a>.

</body>

</html> ";

 

//aqui o comando if, checa se os campos foram preenchidos corretamente, pois dependemos muito de todos os preenchimentos dos campos para o email chegar na origem correta.

 

 

// se os campos tiverem tudo OK, sua mensagem sera enviada corretamente para o sevidor de email, e os dados serão msotrados logo abaixo, junto com o campo fechar formulario

 

if ( ($nomede != "") && ($emailde != "")){

 

//destino, assunto, mensagem e o corpo da mensagem

for ($i=0;$i<=count($emailpara);$i++)

mail($email[$i],$assunto,$mensagem, $headers);

 

mail("$emailpara","Mensagem do site www.meusite.com.br",$corpo,$cabecalho);

echo "<strong><font face='verdana' size='3'>Sua mensagem foi enviada corretamente para:</font></strong><br><br>";

 

echo "<font face='verdana' size='2'>DE:</font><br>";

echo "<font face='verdana' size='2'>$nomede </font><br>";

echo "<font face='verdana' size='2'>$emailde</font><br><br>";

 

echo "<font face='verdana' size='2'>PARA:</font><br>";

echo "<font face='verdana' size='2'>$nomepara </font><br>";

echo "<font face='verdana' size='2'>$emailpara</font><br><br>";

echo "<input name='button' type='button' onClick='self.close()' value='Fechar'>";

 

 

//caso contrario a mensagem abaixo avisa que os campos nao foram preenchidos corretamente e pede para voltar e preencher corretamente

 

} else{

echo "<font face='verdana' size='3'><strong> DESCULPE !!! </strong></font><br><br>";

echo "<font face='verdana' size='2'>Mas todos os Campos são obrigatórios, clique <a href='java script:window.history.go(-1)'> Aqui</a> para voltar.</font>";

}

 

?>

 

</body>

</html>

 

valeu

Compartilhar este post


Link para o post
Compartilhar em outros sites

Amigão, quando for postar algum código, por favor utilize as TAGS ()

codigo fonte aqui
.

 

Pois além de teu código ser gigante, confunde bastante, da até medo de ler. <_<

Compartilhar este post


Link para o post
Compartilhar em outros sites

ok,deseja que eu poste novamente?no aguardo

Amigão, quando for postar algum código, por favor utilize as TAGS ()

codigo fonte aqui
.Pois além de teu código ser gigante, confunde bastante, da até medo de ler. <_<

Compartilhar este post


Link para o post
Compartilhar em outros sites

Fiz algumas pequenas alterações, apesar que esta um pouco bagunçado! Mas ve se muda alguma coisa!

 

 

envio.php

PHP
<html>

<head>

<title>Documento sem título</title>

<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">

</head>

 

<body>

<?

 

 

// primeiramente eu conecto com o banco mysql para mostrar o que eu quero mandar no meu email

require_once("conecta.php");

 

//seleciono a tabela onde tem os campos que quero enviar no email

$result = mysql_query("SELECT * FROM tbl_noticias ORDER BY id DESC Limit 0,1");

//$result = mysql_query("SELECT * FROM tbl_noticias WHERE id = '$id'");

 

// converto para linhas, ate aqui tudo facil

while ($linha = mysql_fetch_array($result)){

$id = $linha['id'];

$titulo = strtoupper($linha['titulo']);

$descricao = $linha['descricao'];

$fonte = $linha['fonte'];

$foto = $linha['foto1'];

 

 

 

// agora crio meu formulario onde tera os campos NOME e EMAIL do REMETENTE e o NOME e EMAIL do destinatario

 

echo "<div align='center'>";

 

echo "<form name='form1' method='POST' action='enviaemail1.php'>";

 

echo "<table align='center' border='0' aligne='center'>";

 

// estes tres campos ficam ocultos (hidden) para poderem enviar para o ENVIAEMAIL os dados do muysql que formarão o corpo do meu email

echo "<input type='hidden' name='id' value='$id'>";

echo "<input type='hidden' name='titulo' value='$titulo'>";

echo "<input type='hidden' name='descricao' value='$descricao'>";

//echo "<input type='hidden' name='fonte' value='$fonte'>";

 

 

 

echo "<br>";

 

echo "<tr>";

echo "<td colspan='2'><div align='left'><font face='verdana' size='2'>DE:</font></div></td>";

echo "</tr>";

 

echo "<tr>";

echo "<td width='90'><font face='verdana' size='2'>Seu Nome:</font></td>";

echo "<td width='120'><font face='verdana' size='2'><input name='nomede' size='30' type='text'></font></td>";

echo "</tr>";

 

echo "<tr>";

echo "<td width='90'><font face='verdana' size='2'>Seu Email:</font></td>";

echo "<td width='120'><font face='verdana' size='2'><input name='emailde' size='20' type='text'></font></td>";

echo "</tr>";

 

echo "<tr>";

echo "<td colspan='2'>...........................................................................</td>";

echo "</tr>";

echo "<tr>";

?>

<?php

//Executa a consulta

 

//seleciono a tabela onde tem os campos que quero enviar no email

$result = mysql_query("SELECT * FROM tbl_contato ORDER BY email");

//$result = mysql_query("SELECT * FROM tbl_noticias WHERE id = '$id'");

echo "<table width=350 border=0 bordercolor='#ffffff' cellpadding='1' cellspacing='1'><tr>"; #comeca tabela

$aux = 0;

// converto para linhas, ate aqui tudo facil

while ($linha = mysql_fetch_array($result)){

$id = $linha['id'];

$email = $linha['email'];

if($aux == 1){ #se for 3 é porque passou 3 colunas, dae faz quebra de linha

$aux = 0; #zera a AUX pra contar novamente 3 colunas

echo "</tr><tr>"; #quebra de linha

}

echo "<td width=100 bordercolor='#F4F4F4' align='center' valign='middle'><input type='checkbox' name='emailpara' value='".$email."'></td><td>".$email."</td>"; #escreve o item normal

$aux++; #soma mais 1 em aux

}

?>

<?

echo "</tr>";

echo "<tr>";

echo "<td colspan='2'><div align='center'><input name='Enviar' size='20' type='submit' value='Enviar'><input name='button' type='button' onClick='self.close()' value='Fechar'></div></td>";

echo "</tr>";

echo "</table>";

echo "</form>";

 

echo "</div>";

}

?>

</body>

</html>

 

 

 

enviaemail1.php

PHP
<html>

<head>

<title>Documento sem título</title>

<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">

</head>

 

<body background='#00923F'>

<?

 

//recebo do formulario os campos que estavam ocultos, mais os campos do formulario NOME email, NOME DO DESTINATARIO E EMAIL DO DESTINATARIO

 

 

$espaco = "..n";

$nomede = $_POST["nomede"];

$emailde = $_POST["emailde"];

$nomepara = $_POST["nomepara"];

$emailpara = $_POST["emailpara"];

$titulo = $_POST["titulo"];

$descricao = $_POST["descricao"];

$id = $_POST["id"];

 

 

//AQUI QUE ESTA O SEGREDO que envia toda a pagina em html para o email destino

 

 

//envia no formato html (importante sem esses dois comandos seu email fica todo bagunçado)

$cabecalho = "MIME-Version: 1.0rn";

$cabecalho .= "Content-type: text/html; charset=iso-8859-1rn";

 

 

// aqui informa para o servidor (hotmail, bol) quem ta mandando e quem ta recebendo o email

$cabecalho .= "From: ".$emailde." <".$emailde.">rn";

$cabecalho .= "To: ".$emailpara." <".$emailpara.">rn";

 

// esse comando é para dar prioridade a mensagem, neste caso uso 1 para chegar mais rapido, o 2 demora mais um pouco

$cabecalho .= "X-Priority: 1rn";

 

 

 

// agora aqui esta o corpo do email que formara todo o email em html, observe que os campos do formulario estão todos montados no seu respectivo lugar.

 

 

$corpo = "

<html>

<head>

<title>www.meusite.com.br</title>

</head>

<style type='text/css'>

@import url(../estilo1.css);

body {

background-image: url();

background-color: #00923F;

}

body,td,th {

font-family: Arial, Helvetica, sans-serif;

font-size: 12px;

}

a:link {

color: #ffffff;

text-decoration: none;

}

a:visited {

color: #ffffff;

text-decoration: none;

}

a:hover {

color: #ffffff;

text-decoration: none;

}

a:active {

text-decoration: none;

}

 

</style>

 

<body>

 

<table width='100%' height='100%' border='0' cellpadding='0' cellspacing='0' background='#00923F'>

<tr>

<td align='center' valign='top'>

 

<table width='778' border='0' cellpadding='0' cellspacing='0'>

<tr>

<td colspan='2'><img src='http://www.meusite.com.br/php/email.jpg' width='778' height='150'></td>

</tr>

<tr>

<td width='50%' height='25' align='left' bgcolor='#02461F'><font color='#02461F'>...</font><font color='#ffffff'>Notícia nº: $id</font></td>

<td width='50%' align='right' bgcolor='#02461F'><a href='http://www.meusite.com.br/noticias.php' target='_blank'>Notícias Anteriores </a><span class='style13'>...</span> </td>

</tr>

</table>

<table width='778' border='0' cellpadding='10' cellspacing='0'>

<tr>

<td height='400' align='center' valign='top' bgcolor='#FFFFFF'><span class='style10'>

</span>

<table width='600' border='0'>

<tr>

<td align='left' valign='top'>

<?php

<b>$titulo</b><p>

$descricao

</span></td>

</tr>

</table>

<span class='style10'> </span></td>

</tr>

</table>

<table width='778' height='10' border='0' cellpadding='0' cellspacing='0'>

<tr>

<td height='25' valign='middle' bgcolor='#00481D'><div align='center'><font color='#ffffff'>RESOLUÇÃO MEDICINA DO TRABALHO - CAXIAS DO SUL - RS - WWW.RESOLUCAOCAXIAS.COM.BR</font></span></div></td>

</tr>

</table></td>

</tr>

</table>

<br>

<center>Caso você não consiga visualizar este e-mail <a href='http://www.meusite.com.br/email/email.php?id=$id'' target='_blank'>clique aqui</a>.

</body>

</html> ";

 

//aqui o comando if, checa se os campos foram preenchidos corretamente, pois dependemos muito de todos os preenchimentos dos campos para o email chegar na origem correta.

 

 

// se os campos tiverem tudo OK, sua mensagem sera enviada corretamente para o sevidor de email, e os dados serão msotrados logo abaixo, junto com o campo fechar formulario

 

if ( ($nomede != "") && ($emailde != "")){

 

//destino, assunto, mensagem e o corpo da mensagem

for ($i=0;$i<=count($emailpara);$i++)

mail($email[$i],$assunto,$mensagem, $headers);

 

mail("$emailpara","Mensagem do site www.meusite.com.br",$corpo,$cabecalho);

echo "<strong><font face='verdana' size='3'>Sua mensagem foi enviada corretamente para:</font></strong><br><br>";

 

echo "<font face='verdana' size='2'>DE:</font><br>";

echo "<font face='verdana' size='2'>$nomede </font><br>";

echo "<font face='verdana' size='2'>$emailde</font><br><br>";

 

echo "<font face='verdana' size='2'>PARA:</font><br>";

echo "<font face='verdana' size='2'>$nomepara </font><br>";

echo "<font face='verdana' size='2'>$emailpara</font><br><br>";

echo "<input name='button' type='button' onClick='self.close()' value='Fechar'>";

 

 

//caso contrario a mensagem abaixo avisa que os campos nao foram preenchidos corretamente e pede para voltar e preencher corretamente

 

} else{

echo "<font face='verdana' size='3'><strong> DESCULPE !!! </strong></font><br><br>";

echo "<font face='verdana' size='2'>Mas todos os Campos são obrigatórios, clique <a href='java script:window.history.go(-1)'> Aqui</a> para voltar.</font>";

}

 

?>

 

</body>

</html>

 

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.