Fóruns sobre PHP, JavaScript, HTML, MySQLi, jQuery, Banco de Dados, CSS


Moderador: web

 
Avatar do usuário
ADMIN
ADMIN
Tópico Autor
Mensagens: 17663
Nome: Kleber
Descrição do site: Onde você encontra scripts grátis para o seu site
Sexo: Masculino
Localização: RJ / RJ / Brasil
Contato:

Envio de e-mails - NewsLetter

22-02-2007 10:53

Abaixo vou passar o código detalhado de um script simples para envio de newsletter, o script tem um formulário onde seus visitantes poderão adicionar ou excluir o e-mail.
Deve ser criado um arquivo chamado: address.txt que deve ter permissão (CHMOD) 777 para gravar os e-mails cadastrados, e coloque esse arquivo no mesmo diretório desse script: newsletter.php, vai o código abaixo para o newsletter.php:

CONFIGURE O CÓDIGO ABAIXO COMO DESEJADO:

<?php /* CONFIGURAÇÕES */ # GRAVE ESSE ARQUIVO COMO newsletter.php # PARA MOSTRAR OS CAMPOS DE ADIÇÃO NA NEWSLETTER use um iframe para: newsletter.php # PARA ENTRAR NA ÁREA DE ENVIO DA NEWSLETTER ACESE: newsletter.php?senha=senhaconfiguraabaixo $pass="123456"; /* crie o arquivo address.txt no servidor com permissão (CHMOD 777) */ # nome do arquivo que grava os e-mails $filelocation="address.txt"; /* PARTE DAS MENSAGENS */ # e-mail não cadastrado $sorrysignmessage = "<font color='red'>$email já está cadastrado.</font>"; # mensagem de cadastro com sucesso $subscribemessage = "<font color='green'>$email foi cadastrado.</font>"; # mensagem no e-mail do cadastrado $subscribemail = "<font color='green'>Newsletter enviado.</font>"; # mensagem quando descadastrar-se $unsubscribemessage = "<font color='green'>$email foi deletado.</font>"; # quando o deletamento não for possível $failedunsubscriptionmessage = "<font color='red'>não foi possível deletar $email</font>"; if (!file_exists($filelocation)) { $newfile = fopen($filelocation,"w+"); fclose($newfile); } $newfile = fopen($filelocation,"r"); $content = fread($newfile, filesize($filelocation)); fclose($newfile); $content=stripslashes($content); $out=""; ################################## espaço entre e-mail % # $lines = explode("%",$content); for ($key=1;$key<sizeof($lines);$key++){ if ($lines[$key] != $email){ ################################## espaço entre e-mail % # $out .= "%".$lines[$key]; } else { $found=1; } } if ($action=="sign"){ if ($found==1){ echo $sorrysignmessage; $disp="yes"; } else { $disp="yes"; $newfile = fopen($filelocation,"a+"); $add = "%".$email; fwrite($newfile, $add); fclose($newfile); echo "$subscribemessage"; } } if ($action=="delete"){ $disp="yes"; if ($found == 1){ $newfile = fopen($filelocation,"w+"); fwrite($newfile, $out); fclose($newfile); echo "$unsubscribemessage"; $disp="yes"; } if ($found != 1){ echo "$failedunsubscriptionmessage"; $disp="yes"; } } if ($senha==$pass){ if ($send != "yes" && $send != "test"){ /* INÍCIO DO FORMULÁRIO DE ENVIO */ print'<form method="post"> <input type="hidden" name=senha value='.$pass.'> <input type="hidden" name=send value=yes> Enviando o newsletter: <br> Assunto: <br> <input type="text" name="subject" size=20> <br> código html de sua mensagem: <br> <textarea cols=80 rows=20 wrap="virtual" name="message"></textarea> <br> <input type="submit" value="Enviar"> </form>'; } /* COMEÇO DO ENVIO */ if ($send == "yes"){ $message=stripslashes($message); $subject=stripslashes($subject); $lines = explode("%",$content); for ($key=1;$key<sizeof($lines);$key++){ /* DADOS E FORMATO DE ENVIO */ // text/html = para enviar no formato html // text/txt = para enviar no formato texto mail("$lines[$key]","$subject","$message","From:<meuemail@meusite.com> Content-type: text/html"); } print "<script language='JavaScript' type='text/javascript'> window.alert('o seu newsletter foi enviado com sucesso a todos cadastrados!') </script>"; print "<pre> $mailheaders\nAssunto: $subject\nMensagem: $message </pre>"; } } if ($senha != $pass && $disp != "no"){ print $welcomemessage; /* INÍCIO DO FORMULÁRIO DE CADASTRO NO NEWSLETTER */ echo '<body leftmargin=0 topmargin=0> <script language=javascript> function validar(form) { email = document.formulario.email.value; if (email == "") { alert("coloque seu email"); formulario.email.focus(); return false; }else { if (email.indexOf("@") == -1) { alert("Digite um e-mail válido."); formulario.email.focus(); return false; } document.formulario.submit(); } } </script> <table border=0> <form method="post" name="formulario"> <tr> <td><input type="text" name="email" size=28 onFocus=this.value="" value="seu e-mail"></td> <td><input type="checkbox" name="action" value="sign" checked> adicionar</td> <td><input type="checkbox" name="action" value="delete"> excluir</td> </tr><tr> <td colspan=3 align=right><input type="button" value="Enviar" onClick="return validar(this)"></td> </tr></form> </table>'; } ?>

0
A melhor hospedagem para o seu site HostGator!

Quem está online

Usuários navegando neste fórum: Nenhum usuário registrado