Esse é um sistema feito em php e banco de dados mysql, ele realiza o cadastro e remoção de e-mail mediante confirmação que é enviada por e-mail. Faz o envio de e-mails em formato de texto ou HTML através de um servidor SMTP. Optei em utilizar a conexão SMTP devido a provedores como o IG não receberem mensagens vindo de uma conexão sem autenticação, e a maioria dos outros servidores classificarem como lixo eletrônico.
Esse tutorial está dividido em quatro partes, sendo essa a primeira.
Conhecimentos básico em PHP e MYSQL
Autorização para criar tabelas no banco de dados
Recomendo a leitura dos artigos escrito pelo Marcelo Ariatti e Fábio Ricotta sobre o desenvolvimento do conteúdo de uma newsletter
Vamos precisar de uma tabela para armazenar os endereços de e-mail, então vou passa a estrutura da tabela que deve se chamar newsletter para que vocês possam criar.

Ou se preferir aqui vai o código de criação da tabela newsletter
CREATE TABLE `newsletter` (
`id` int(11) NOT NULL auto_increment,
`email` varchar(40) default NULL,
`codigo` varchar(150) NOT NULL default ”,
`ativo` varchar(8) default NULL,
PRIMARY KEY (`id`)
Agora vamos criar as páginas que serão utilizadas em todo o tutorial, ou seja, nas quatro partes

![]()
Agora vamos criar o formulário para que os usuarios possam se cadastrar e efetuar e descadastramento do seu e-mail então abra a página index.php









Pronto o formulário ja foi criado. Você pode identificar os campos e editar este formulario desde que não altere os nomes e valores dos ampos. Se você estiver no modo de visualização do projeto mude para o modo de visualização do código. Para verificar o código gerado é igual o meu.
![]()
<form name=”form1″ method=”post” action=”enviar_email.php”>
<input type=”text” name=”e-mail”>
<input type=”radio” name=”opcao” value=”assinar”>
<input type=”radio” name=”opcao” value=”remover”>
<input type=”submit” name=”Submit” value=”Enviar”>
</form>
Feche essa página e agora iremos criar a página que conterá a classe de conexão e autenticação do servidor SMTP. Devido a esse assunto não está relacionado a esse tutorial vamos apenas copiar o código e não altere nada. Essa é uma classe de autenticação SMTP que achei na internet, é muito simples porém muito funcional. Abra a página smtp.class.php e cole o código
<?
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)) {
echo fgets($this->conn) . “<br>\n”;
}
}
return fclose($this->conn);
}
}
?>
Na próxima parte vamos montar a página que vai receber as informações desse formulário e executar os comandos que atenda a solicitação especificada. Qualquer comentário que vocês deixarem será bem vindo. Deixem seus pedidos de tutorias para as próximas colunas clicando aqui
Autor: Marcelo Ramos – Colunista Dreamweaver do Portal MXSTUDIO
Qualquer dúvida envie um email para ramos.marcelosouza@gmail.com ou acesse o nosso fórum
Poxa muito bom o tutorial, li ele todo e fiz tudo que foi escrito mais infelizmente meu script ainda tem alguns erros… seria pedir muito se os arquivos fossem enviados pro meu e-mail ? kennedy.rj@hotmail.com ou que alguem cometesse a bondade de me ajudar a concertar !?
vlw
Bom!
Vou tentar fazer depois comento melhor. Ok?
Estou querendo montar uma newletter, mas meus conhecimentos no assunto são poucos ou quase nenhum, sou professora e gostaria de divulgar os trabalhos desenvolvidos na minha escola.
Peço ajuda!!!
é o melhor tutorial ki ja vi , mais detalhado , sem faltar nenhuma parte
parabensss
massa
Eu estou tentando criar uma newsletter para meu site alguem sabe se tem como colocar ela automatizada tipo os email serem enviados por um sistema?