osk 0 Denunciar post Postado Setembro 27, 2007 E ai galera vou dexar aqui um script em php, para quem envia newsletter atraves de um bd, fiquem avontade se quiser alterar acrescentar, tirar, etc... Bem ele envia email por tempo, você pode alterar quantos email você vai enviar dentro de segundos, tem um painel simples com menu que criei so para funcionabilidade mesmo, tambem precisa fazer login para acessar a area! Lembrando que esse script foi feito para ajudar aqueles que tem clientes cadastrados em seu db, ele não foi feito no intuido de enviar SPAM por que isso e crime Vamos primeiro criar nosso db! CREATE TABLE `newsletter` ( `id` int(4) NOT NULL auto_increment, `email` varchar(120) NOT NULL default '', `codStatus` int(1) NOT NULL default '0', `bloqueado` int(11) NOT NULL default '0', `enviado` int(11) NOT NULL default '0', PRIMARY KEY (`id`)); 1º arquivo: Configurar o config.php, com os dados do db, e login de acesso ao script! config.php PHP <?php //mysql $host = "Seu host"; $banco = "Seu db"; $usuario = "Seu usuario"; $senha = "Sua senha"; mysql_connect($host,$usuario,$senha); mysql_select_db($banco); //administrativo $a_login = "Seu login"; //login do administrador $a_senha = "Seu Senha"; //senha do administrador ?> 2º arquivo: no form.php você coloca sua configuração de email, e tambem precisa colocar os dados para conexão ao db.Esse aquivo e o principal entaum cuidado ao alterar as linhas, ele é responsavel em enviar os email! formail.php PHP <?php session_start("admin"); if($_SESSION["admin"] == "on"){ ?> <?PHP // DADOS DE ACESSO AO BANCO MYSQL $host = "Seu host"; $banco = "Seu db"; $usuario = "Seu usuario"; $senha = "Sua Senha"; $n = "nome do remetente"; $remetente = "email de quem esta enviando"; // NOME DA TABELA $tabela = "newsletter"; // CAMPOS UTILIZADOS PARA A CONSULTA $campos = "id, email"; // NUMERO MÁXIMO DE ENVIO $quant = 1; // TEMPO ENTRE UM PROCESSO DE ENVIO E OUTRO $seg = 4; $msg = "<html> Sua Mensagem!! </html>"; // DADOS DO EMAIL A SER ENVIADO $assunto = "ASSUNTO"; // CONECTA COM O SERVIDOR MYSQL mysql_connect($host,$usuario,$senha); // SELECIONA O BANCO mysql_select_db($banco); // RESGATA O VALOR DA GLOBAL INICIO $inicio = $_GET["inicio"]; // VERIFICA SE FOI ATRIBUIDO VALOR A VARIAVEL "INICIO" if($inicio == ""){ // ATRIBUI O VALOR 0 CASO NÃO EXISTA VALOR ATRIBUIDO $inicio = 0; }else{ // ATRIBUI O VALOR DA GLOBAL INICIO CASO JA EXISTA VALOR ATRIBUIDO $inicio = $_GET["inicio"]; } // ATRIBUI O RESULTADO DA SOMA ENTRE INICIO E QUANT $fim = $inicio + $quant; // EXECUTA A CONSULTA OU INFORMA UM ERRO CASO OCORRA $sql = mysql_query("SELECT ". $campos ." FROM ". $tabela ." WHERE enviado = 0 LIMIT ". $inicio .",". $quant)or die(mysql_error()); // VERIFICA SE AINDA EXISTEM EMAILS A SEREM ENVIADOS if(mysql_num_rows($sql) == 0){ // INFORMO O TÉRMINO DO PROCESSO echo "<span class='style1'>Fim do processo de envio!</span>"; }else{ // CONTINUA EFETUANDO O ENVIO echo "<meta http-equiv="refresh" content="" . $seg . ",URL=?inicio=". $fim ."">"; } // CRIA O LAÇO REPETITIVO while($r = mysql_fetch_assoc($sql)){ // ADICIONAMOS OS PADRÕES DE DESTINATÁRIO $para = $r['email']; $id = $r['id']; $cabecalho = "MIME-Version: MSHTML 6.00.2900.3157rn"; $cabecalho .= "Content-Type: text/html; charset=windows-1252rn"; $cabecalho .= "From:$n<$remetente>rn"; $cabecalho .= "Reply-to:<$remetente>rn"; // ENVIA O EMAIL PARA O DESTINATÁRIO if(mail($para, $assunto, $msg, $cabecalho)){ // INFORMA SE A MENSAGEM FOI ENVIADA echo "<span class='style1'>Mensagem enviada para: $para ($id)</span>"; // ALTERO O CODSTATUS PARA 1 @mysql_query("UPDATE newsletter SET enviado = '1' WHERE email = '$para'"); }else{ // INFORMO SE A MENSAGEM NÃO FOI ENVIADA echo "<span class='style1'>Mensagem não enviada para: $para ($id)</span>"; } } // LIBERA MEMORIA USADA NA CONSULTA mysql_free_result($sql); ?> <?php } ?> <style type="text/css"> <!-- body { background-color: #610000; } .style1 { color: #ff9a00; font-size: 18px; } --> </style> <br><a href="java script:history.back(1)">Voltar </a> 3º arquivo: adiciona.php nao altere nada. Ele adiciona um email para que você possa testar o envio! adiciona.php PHP <?php session_start("admin"); if($_SESSION["admin"]=="on"){ $email = $_POST["ad_mail"]; $codigo = md5($email); include("config.php"); $verif = mysql_query("SELECT * FROM newsletter WHERE email = '$email'"); if(mysql_num_rows($verif)==1){ }else{ mysql_query("INSERT INTO newsletter(email, codStatus, bloqueado, enviado) VALUES ('$email','0','0','0') "); } echo "<span class='style1'>E-mail Adicionado com sucesso!</span>"; } else{ echo "<script>location.href='login.php'</script>"; } ?> <style type="text/css"> <!-- .style1 { color: #ff9a00; font-size: 20px; } --> </style> 4º arquivo: login.php não altere. Responsavel para efetuar o login. login.php PHP <?php session_start("admin"); require ("config.php"); $acao = $_GET["acao"]; if($acao==""){?> <style type="text/css"> <!-- .style1 {color: #ff9a00} body { background-color: #610000; } --> </style> <table border="0" cellpadding="0" cellspacing="0" width="100%"> <tr> <td width="100%" style="border: 1 solid #000000"><b><font face="Arial"><span class="style1"><font size="4"> >> Área Restrita </font></span><br> </font></b> <form method="POST" action="?acao=logar"> <p align="center"><font face="Arial"><font size="2"><span class="style1">Usuário:</span><br> <input type="text" name="usuario" size="20" style="font-size: 8 pt; font-family: arial; border-style: solid; border-width: 1"><br> <span class="style1">Senha:</span><br> </font> <input type="password" name="senha" size="20" style="font-size: 8 pt; font-family: arial; border-style: solid; border-width: 1"><br> <input type="submit" value="Login" style="background-color: #FFFFFF; font-family: arial; font-size: 8 pt; border: 1 solid #000000"></font></p> </form> </td> </tr> </table> <?php } else { if(($_POST["usuario"]==$a_login) AND ($_POST["senha"]==$a_senha)){ $_SESSION["admin"] = "on"; echo "<script>location.href='index.php'</script>"; } else{ echo "<script>location.href='login.php'</script>"; } } ?> 5º arquivo: logout.php nao altere. logout.php PHP <?php session_start("admin"); session_destroy(); echo "<script>location.href='login.php'</script>"; ?> 6º arquivo: resetar.php nao altere. PHP <?phpsession_start("admin"); if($_SESSION["admin"]=="on"){ require("config.php"); if (mysql_query("UPDATE newsletter SET enviado = '0' WHERE enviado = '1'")){ echo "<span class='style1'>Enviados zerado com sucesso</span>";} } else{ echo "<script>location.href='login.php'</script>"; } ?> <style type="text/css"> <!-- .style1 { color: #ff9a00; font-size: 20px; } --> </style> <br><a href="java script:history.back(1)">Voltar </a> 7º arquivo: result_nao_enviados.php nao altere. Ele monstar quantos email ainda nao foram enviados! result_nao_enviados.php PHP <?phprequire("config.php"); $query = "SELECT * FROM newsletter WHERE enviado = '0'"; $consulta = mysql_query($query); $linhas = mysql_num_rows($consulta); echo '<span class="style1"><p> FORAM ENCONTRADO(S) '.$linhas.' E-mail(S) Não Enviado(s)</p></span>'; for($n = 0; $n < $linhas; $n++){ $registro = mysql_fetch_array($consulta); } ?> <style type="text/css"> <!-- .style1 { color: #ff9a00; } --> </style> 8º arquivo: result_enviados.php nao altere. Ele monstra quantos email foram enviados! result_enviados.php PHP <style type="text/css"><!-- .style1 { color: #ff9a00; font-size: 16px; } --> </style> <? require("config.php"); $query = "SELECT * FROM newsletter WHERE enviado= '1' "; $consulta = mysql_query($query); $linhas = mysql_num_rows($consulta); echo '<span class="style1"><p> FORAM ENCONTRADO(S) '.$linhas.' E-mail(S) Enviado(s)</p></span>'; for($n = 0; $n < $linhas; $n++){ $registro = mysql_fetch_array($consulta); } ?> 9º Arquivo: nossa index.php! index.php PHP <?php session_start("admin"); if($_SESSION["admin"] == "on"){ require "config.php"; ?> <html> <head> <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1"> <style type="text/css"> <!-- body { background-color: #610000; } body,td,th { color: #ff9a00; } .style1 {font-size: 24px} --> </style></head> <body> <p class="style1">Área Administrativa</p> <table width="200" border="0" align="center"> <tr> <th scope="col"><object classid="clsid:D27CDB6E-AE6D-11cf-96B8-444553540000" codebase="http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=7,0,19,0" width="560" height="50"> <param name="movie" value="menu/doors.swf"> <param name="quality" value="high"> <embed src="menu/doors.swf" quality="high" pluginspage="http://www.macromedia.com/go/getflashplayer" type="application/x-shockwave-flash" width="560" height="50"></embed> </object></th> </tr> </table> <p align="center" class="style1"><iframe src="" height="400" width="600" name="cont"></iframe> </p> <p> </p> </body> </html> <?php } else{ echo "<script>location.href='login.php'</script>"; } ?> 10º Arquivo: adicionar.php esse e o form para adicionar o email! adicionar.php PHP <html><head> <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1"> <title>Untitled Document</title> <style type="text/css"> <!-- body { background-color: #610000; } .style1 { color: #ff9a00; font-size: 24px; } --> </style></head> <body> <div align="center"> <p class="style1"> Para adicionar E-mails. Preencha o campo abaixo e clique em adicionar! </p> <form name="form1" method="post" action="adiciona.php"> <label> <input name="ad_mail" type="text" id="ad_mail" size="30"> <br> <br> </label> <label> <input type="submit" name="Submit" value="Adicionar"> </label> </form> <p class="style1"> </p> </div> </body> </html> Muito bem esse o script, vou colocar aqui o link completo com os menus ! http://w15.easy-share.com/10815881.html Qualquer duvida poste no forum! Abraço! Compartilhar este post Link para o post Compartilhar em outros sites
webdibula 0 Denunciar post Postado Outubro 17, 2007 não achei o teu menu no link que você deixou para download?valeu Compartilhar este post Link para o post Compartilhar em outros sites
osk 0 Denunciar post Postado Outubro 18, 2007 Troquei o link coloquei ele pronto ! http://forum.imasters.com.br/public/style_emoticons/default/thumbsup.gif/> Compartilhar este post Link para o post Compartilhar em outros sites
KnowHow 0 Denunciar post Postado Outubro 19, 2007 Opah, parece ser um script bom, mas encontrei um erro, não sei se aconteceu só comigo ou teve mais pessoas com o mesmo problema. da um erro no formail.php linha 72. Veja Abaixo: Parse error: syntax error, unexpected T_STRING, expecting ',' or ';' in /home/arenahos/public_html/newsletter/formail.php on line 72Já tentei mecher na linha, mas não consegui arumar. O conteudo da linha é esta:echo "<meta http-equiv="refresh" content="" . $seg . ",URL=?inicio=". $fim ."">"Você sabe oque pode ser? Compartilhar este post Link para o post Compartilhar em outros sites
osk 0 Denunciar post Postado Outubro 22, 2007 Bem ate agora ninguem falo nada mas tente alterar, talvez seu servidor nao entenda,tente isso: PHP echo "<meta http-equiv='refresh' content='" . $seg . ",URL=?inicio=". $fim ."'>"; ou PHP echo "<meta http-equiv='refresh' content='$seg,URL=?inicio= $fim'>"; Compartilhar este post Link para o post Compartilhar em outros sites
KnowHow 0 Denunciar post Postado Outubro 22, 2007 Agora funcionou, usei o primeiro código que você postou e funcionou perfeitamente.Agora vou tentar codar um sistema de cadastro para a newsletter e pra remover o cadastro.Muito Obrigado pela ajuda. Compartilhar este post Link para o post Compartilhar em outros sites
RenegadeThePox 0 Denunciar post Postado Outubro 22, 2007 Olá amigo, estou tendo um problema no script form.php na ultima linha. Parse error: syntax error, unexpected $end in C:\xampp\htdocs\newsletter\formail.php on line 125ja tentei de tudo, mas não consegui fixar istodesde ja obrigado.EDIT: Fixado Compartilhar este post Link para o post Compartilhar em outros sites
osk 0 Denunciar post Postado Outubro 23, 2007 Renegate, você modificou alguma coisa? Porque o form.php so tem 123 linhas !Se você alterou poste seu code ! Compartilhar este post Link para o post Compartilhar em outros sites
Luiz Ricardo Guimaraes 0 Denunciar post Postado Outubro 23, 2007 amigo baixei seu sistema e ta faltando o arquivo formail.php não modifiquei nadaNão existe o arquivo ou a pastaURL não existe /newsletter/formail.php- Consulta de pasta:/newsletter/ - existre- Arquivos dentro da pasta /newsletter//newsletter/ adiciona.php/newsletter/ adicionar.php/newsletter/ config.php/newsletter/ form.php/newsletter/ index.php/newsletter/ login.php/newsletter/ logout.php/newsletter/ resetar.php/newsletter/ result_enviados.php/newsletter/ result_nao_enviados.php Pasta Sub-Pasta Arquivo/newsletter/ menu/ btn_adicionar.swf/newsletter/ menu/ btn_enviar.swf/newsletter/ menu/ btn_reset.swf/newsletter/ menu/ doors.swf- O arquivo "formail.php" não existe na pasta /newsletter/ Compartilhar este post Link para o post Compartilhar em outros sites
osk 0 Denunciar post Postado Outubro 23, 2007 Troque o nome do code /newsletter/ form.php para /newsletter/ formail.php, amigo! http://forum.imasters.com.br/public/style_emoticons/default/thumbsup.gif/> Compartilhar este post Link para o post Compartilhar em outros sites
Hopster 0 Denunciar post Postado Novembro 9, 2007 o link do rapid está deletado.. tens outro pra baixar? Compartilhar este post Link para o post Compartilhar em outros sites
osk 0 Denunciar post Postado Novembro 22, 2007 Mal a demora, tava de ferias! =) Link trocado. Compartilhar este post Link para o post Compartilhar em outros sites
Alex Bazzo 0 Denunciar post Postado Novembro 29, 2007 Bem ate agora ninguem falo nada mas tente alterar, talvez seu servidor nao entenda,tente isso: PHP echo "<meta http-equiv='refresh' content='" . $seg . ",URL=?inicio=". $fim ."'>"; ou PHP echo "<meta http-equiv='refresh' content='$seg,URL=?inicio= $fim'>"; Olá, já tentei essas duas linhas, e aconteceu os seguintes erros.... Warning: mysql_connect() [function.mysql-connect]: Unknown MySQL server host 'Seu host' (2) in /home/restricted/home/liapapelaria/public_html/cadastro/formail.php on line 39 Warning: mysql_select_db() [function.mysql-select-db]: Can't connect to local MySQL server through socket '/var/lib/mysql/mysql.sock' (2) in /home/restricted/home/liapapelaria/public_html/cadastro/formail.php on line 42 Warning: mysql_select_db() [function.mysql-select-db]: A link to the server could not be established in /home/restricted/home/liapapelaria/public_html/cadastro/formail.php on line 42 Warning: mysql_query() [function.mysql-query]: Can't connect to local MySQL server through socket '/var/lib/mysql/mysql.sock' (2) in /home/restricted/home/liapapelaria/public_html/cadastro/formail.php on line 60 Warning: mysql_query() [function.mysql-query]: A link to the server could not be established in /home/restricted/home/liapapelaria/public_html/cadastro/formail.php on line 60 Can't connect to local MySQL server through socket '/var/lib/mysql/mysql.sock' (2) Compartilhar este post Link para o post Compartilhar em outros sites
Beraldo 864 Denunciar post Postado Novembro 29, 2007 Olá, já tentei essas duas linhas, e aconteceu os seguintes erros.... Warning: mysql_connect() [function.mysql-connect]: Unknown MySQL server host 'Seu host' (2) in /home/restricted/home/liapapelaria/public_html/cadastro/formail.php on line 39 Warning: mysql_select_db() [function.mysql-select-db]: Can't connect to local MySQL server through socket '/var/lib/mysql/mysql.sock' (2) in /home/restricted/home/liapapelaria/public_html/cadastro/formail.php on line 42 Warning: mysql_select_db() [function.mysql-select-db]: A link to the server could not be established in /home/restricted/home/liapapelaria/public_html/cadastro/formail.php on line 42 Warning: mysql_query() [function.mysql-query]: Can't connect to local MySQL server through socket '/var/lib/mysql/mysql.sock' (2) in /home/restricted/home/liapapelaria/public_html/cadastro/formail.php on line 60 Warning: mysql_query() [function.mysql-query]: A link to the server could not be established in /home/restricted/home/liapapelaria/public_html/cadastro/formail.php on line 60 Can't connect to local MySQL server through socket '/var/lib/mysql/mysql.sock' (2) Primeiramente, bem-vindo ao iMasters, Alex Bazzo! Altere esta parte, com as informações do seu servidor MySQL: <!--php--><div class='highlight_syntax_top'>PHP</div><div class='highlight_syntax_main'><!--php1--><div class="php">//mysql $host = "Seu host"; $banco = "Seu db"; $usuario = "Seu usuario"; $senha = "Sua senha"; </div><!--php2--></div><!--php3--> Compartilhar este post Link para o post Compartilhar em outros sites
ruditap 0 Denunciar post Postado Dezembro 13, 2007 Como faço para excluir usuarios??? Compartilhar este post Link para o post Compartilhar em outros sites
osk 0 Denunciar post Postado Janeiro 2, 2008 Como faço para excluir usuarios??? você pode fazer isso direto no banco de dados, mas pode criar um excluir.php tambem ! Compartilhar este post Link para o post Compartilhar em outros sites
Fraivo 0 Denunciar post Postado Janeiro 13, 2008 Ola! Achei bem interessante o seu sistema e gostaria de saber se seria possível ao invés de mandar um simples html na mensagem eu adicionar uma imagem. Qual seria o código para adicionar uma imagem junto ao email. Obrigado. Compartilhar este post Link para o post Compartilhar em outros sites
osk 0 Denunciar post Postado Janeiro 16, 2008 Ola! Achei bem interessante o seu sistema e gostaria de saber se seria possível ao invés de mandar um simples html na mensagem eu adicionar uma imagem. Qual seria o código para adicionar uma imagem junto ao email. Obrigado. Sim claro você pode fazer como se fosse uma pagina em html normal, mas so que ao inves de você usar duas aspas " você usa uma so ' entedeu? <html> <head> <img src='caminho_da_imagem.jpg' width='390' height='235'> </head> </html> Compartilhar este post Link para o post Compartilhar em outros sites
well2905 0 Denunciar post Postado Janeiro 30, 2008 Olá Otimo sistema, mas não teria como fazer um campo para nós escrevermos o conteudo dos emails e anexar imagens junto a eles? Obrigado Compartilhar este post Link para o post Compartilhar em outros sites
osk 0 Denunciar post Postado Fevereiro 1, 2008 Olha cara ter ate, mas estou meio sem tempo de fazer alguma coisa agora. Talvez mais pra frente eu faça um pra você ! Compartilhar este post Link para o post Compartilhar em outros sites