Criar Web, manuais e recursos para desenvolvimento web
Manuais
Programas
FAQS
Diretório
Comunidade
  Inicio > Manuais > Workshop de PHP
SEÇÕES
Manuais relacionados
+Workshop de PHP
Categorias
+Scripts em PHP

Índice do Manual Workshop de PHP
+ Gestão de ficheiros através de PHP
+ Upload de ficheiros com PHP
+ Verificar a existência de uma URL
+ Leitura sequencial de ficheiros com PHP
+ Escritura em ficheiros com PHP
+ Gestão de directórios com PHP
+ Função que escreve um campo select com valores de uma base de dados
+ Receber o último ID de uma inserção com PHP e MySQL
+ Recolher dados de um Select Multiple com PHP
+ Enviar e-mails pelo PHP
+ Validar um endereço email em PHP
+ Loop para receber todas as variáveis por POST em PHP
+ Enviar um formulário por mail com PHP
+ Paginação de resultados com PHP e MySQL
+ Usuários ativos com PHP
+ Listas de elementos com cores alternas em PHP
+ Programas de livre distribuição em PHP
+ phpMyAdmin
+ Formatação de uma cadeia
+ Cálculo dos dias de um mês em PHP
+ Contador simples para páginas PHP
+ Avaliações dos usuários em PHP
+ Rastrear os robôs de buscadores
+ Recomendar um site usando PHP
+ Criação de um log de erros
+ Comprimir página PHP
+ Contador PHP com imagens
+ Editor PHP Maguma Studio
+ SiteMaps de Google em PHP
+ Teste de velocidade de conexão à Internet
+ Mostrar Conteúdo de acordo com o país em PHP
+ Conteúdos em banco de dados com PHP
+ Problemas com as datas em timestamp Unix de PHP
+ Contar o número de linhas e caracteres em arquivo PHP
+ Transformação Doc, Odt ou Rtf para PDF
+ Preencher um arquivo RTF e gerar o PDF
+ Converter arquivos ods ou xls para pdf
+ PHP isam, ferramenta Web para Arquivos Planos
+ Undefined variable ou Undefined index
+ Agregar carinhas ao sistema
+ Paginator, script para paginação com PHP e MySQL
+ Executar scripts PHP automaticamente através do cron com CURL
+ Uso do FTP com PHP
+ Instalação de One or Zero PHP Helpdesk
+ Portal PHP Nuke
+ Gerando feed RSS de notícias em PHP
+ Blasten blt-SEARCH 1.0.5
+ Classes e Objetos em PHP
+ Recuperando a qualidade de uma imagem JPEG
+ Comprovar se existe o domínio do correio
+ Tutorial de BBCode
+ Função em PHP para o cálculo de minutos transcorridos em duas horas dadas
+ Criação de gráficos em PHP com JpGraph
+ Gerar documentos de Word RTF com PHP
+ Introdução ao Symfony
+ Arredondar decimais em PHP
+ Envio de boletins a e-mails de um banco de dados MySQL
+ Htaccess e páginas dinâmicas
+ Criando imagens com PHP
+ Programar um buscador com PHP e MySQL
+ Loop para receber todos os dados de uma fila de um recordset com PHP

Descrição dos capítulos

Parceiros
- CSS para Web Design
- S.O.S Designers
- Slackware-Brasil
- Crie seu Web site
- Oficina da Net


Envio de boletins a e-mails de um banco de dados MySQL

Código em PHP para o envio de boletins a e-mails armazenados em um banco de dados.


Agora está muito na moda o envio de boletins para informar das novidades nas webs. O único problema é que para fazê-lo, a maioria de webmasters tem que depender de alguma empresa (ou servidor) que lhes gerencie o banco de dados e lhes envie e-mails quando o requeiram.

Neste artigo explicarei passo a passo como criar a tabela (no banco de dados MySQL) necessária para o armazenamento dos e-mails e posteriormente, como enviar um boletim a todos eles, com o estímulo de que não apareçam todos os destinatários no campo "Para:" da mensagem.

Criação de tabela no banco de dados

Mediante seu gerenciador do banco de dados MySQL (certamente "phpMyAdmin") deve criar uma nova tabela em seu banco de dados. Aqui lhe facilitamos o arquivo de texto para isso:

CREATE TABLE usuarios (
id bigint(7) NOT NULL auto_increment,
nick varchar(100) NOT NULL,
passoword varchar(100) NOT NULL,
nome varchar(255) default NULL,
email varchar(100) default NULL,
KEY id (id)
)

E ficará assim em seu phpMyAdmin:


Depois disso, você já tem a tabela necessária para armazenar os dados dentro de um banco de dados MySQL. Poderia explicar como introduzir os dados nesta tabela mediante formulários de registro... porém isso já deixo a gosto do webmaster.

Envio do boletim

Para enviar o boletim só deve mudar os dados do seguinte arquivo php pelos de seu banco de dados e terá seu arquivo pronto. Para enviar o boletim só tem que executar este arquivo em seu servidor (carregá-lo: por exemplo, entrar em http://usuarios.lycos.com/seunomedeusuario/prova.php):

<?php
  $minha_conexion=mysql_connect('servidor','nome_de_usuarior','senha') or die('Não se pode conectar com o banco de dados!');

/*
Servidor: aqui deve colocar o endereço de seu servidor, na maioria das companhias é 'localhost'
Nome_de_usuario: deve colocar seu nome de usuário no servidor.
Senha: sua senha.
*/

   mysql_select_db('banco_de_dados',$minha_conexao);

/*
Banco_de_dados: nome de seu banco de dados.
*/

   $query_Tabela = "SELECT email FROM usuarios ORDER BY id ASC";
   $Tabela = mysql_query($query_Tabela, $minha_conexao) or die(mysql_error());

/*
E-mail: é o nome do campo que requeremos, se seguiu nossas instruções criando nossa mesma tabela no banco de dados não deve mudar isto.
Usuários: é o nome da tabela onde está o campo 'email', se seguiu nossas instruções criando nossa mesma tabela em banco de dados não deve mudar isto.
*/

   //elaboramos cadeia de emails
  $osemails="";
  while ($row_Tabela=mysql_fetch_assoc($Tabela)) {
   $osemails.=($row_Tabela['email'].", ");
   }

  $largo=strlen($osemails);
   if ($largo>2)
{
   //tiramos ultimos ", "
   $osemails=substr($osemails,0,$largo-2);
}
else
{
   echo "Não há destinatários!";
   die();
};

// se definem os argumentos de mail( ):
$assunto='Prova de email atraves de PHP';
$mensagem='<html>
<head>
   <title>Titulo da Pagina</title>
</head>
<body>
   <p>Esta é uma prova de emails em formato HTML</p>
   Preços de nossos produtos:
   <table>
    <tr>
   <th>PRODUTO<th>PRECO<th>PROMOCAO</th>
   </tr>
  <tr>
   <td>Refrigerante Grande</td><td>25,50</td><td>23,00</td>
  </tr>
  <tr>
    <td>Sorvete Napolitano</td><td>27,50</td><td>25,00</td>
  </tr>
  <tr>
   <td>Batatas</td><td>18,50</td><td>15,00</td>
  </tr>
  </table>
</body>
</html>';

/*
Aqui deve colocar seu email em formato HTML
*/

$envia='enviante';
$remete='email_remetente';

/*
Enviante: Nome do enviante
Email_remetente: email que deseja mostrar como remetente.
*/

/// Envio do email:

mail(null, $assunto, $mensagem, "MIME-Versao: 1.0
Content-type: text/html; charset=iso-8859-1
From: $envia <$remete>
Bcc: $osemails" . "\r\n") or die("Erro ao Enviar o Email");
echo "Mensagem Enviado com Sucesso!"; //

   mysql_free_result($Tabela);
   mysql_close($minha_conexao);
?>
Já temos nosso sistema de envio de boletins, não teremos que depender de ninguém.

O único problema que apresenta este sistema é que ao não aparecer nada no campo "Para:" do email, alguns gerenciadores de email o colocam como "correio não desejado". Aceito contribuições de outros leitores para melhorá-lo.

Autoria e outras referências sobre este artigo

Manuais relacionados com este artigo
Dentro de Workshop de PHP

Categorias relacionadas
Através das categorias do nosso diretório podem ser encontrados outros tipos de recursos relacionados com este artigo:
+ Entrar em Scripts em PHP


Comentários dos visitantes
Os comentários dos visitantes são para ampliar a informação do artigo. Todos podem participar.
Acrescentar um comentário do artigo Acrescentar um comentário do artigo



Sobre nós | Copyright | Anuncie | Entrar em contato <criarweb>

Hospedado por Hostnet Hospedagem de Sites