Ir ao conteúdo
  • Cadastre-se
Cashtter

Envio de múltiplos emails

Recommended Posts

Pessoal preciso de ajuda com um sistema que estou fazendo..

Queria fazer uma tabela que mostrasse todos os usuários que tenho cadastrado no meu banco de dados, e do lado de cada 1, faria um checkbox para eu seleciona-los para enviar um e-mail exp:

 

 

quando eu quisesse enviar o mesmo e-mail para mais de uma pessoa de uma vez, apenas selecionando-as pelo checkbox 
 

Exemplo na imagem anexada!

 

 

 

se alguém pudesse me ajudar, ficaria muito grato..

post-725649-0-51275700-1401916960_thumb.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Uma vez eu fiz isso em C#, mas não lembro hoje como fiz.

 

O que lembro é:

-Faça o envio do e-mail como prioridade normal;

-Envie os e-mails aos poucos, se você enviar muitos de cada vez é 100% de chance dos servidores (de envio/recebimento) considerarem spam, afinal o e-mail que você estará usando não tinha antes esse volume de envio;

Compartilhar este post


Link para o post
Compartilhar em outros sites
Olá,

 

Para Fazer a lista você precisa fazer uma consulta no banco e por os dados dentro de um while. Sendo que para cada registro você adiciona um input do tipo checkbox

ps: Assumindo que você está utilizando PHP e html.

 

Exemplo:

 



$consulta = mysqli("sua consulta ", $conexao);
while($algumacoisa = mysqli_fetch_object($consulta)):
echo "<input type='checkbox'..... $algumacoisa->nome... />";
endwhile;


 

 

Depois para enviar por e-mail você precisa percorrer com foreach os dados enviados pelo formulário e usar uma classe chamada phpmailer. nela você pode enviar o mesmo e-mail para diversos endereços... é uma classe bem avançada porém, fácil de aprender.

 

Mas.. tome cuidado, muito e-mails pode ser considerado spam.

Compartilhar este post


Link para o post
Compartilhar em outros sites
<?php$buscarusuarios=mysql_query("SELECT * FROM usuarios WHERE nivel<='1'");if(mysql_num_rows($buscarusuarios) == 0){echo"Nenhum usuário cadastrado no sistema!";}else{while($linha=mysql_fetch_array($buscarusuarios)){?><td width="20"><input type="checkbox" name="email2"></td><td width="50%"><?php echo $linha["nome"];?></td></tr><?php } }?>

Da uma olhadinha no código e e vê o que estou fazendo de errado por favor.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Qual erro exatamente está aparecendo?

 

Por hora, vou dar uma arrumada no seu código para melhor compreensão.

$buscarusuarios = mysql_query("SELECT * FROM usuarios WHERE nivel<='1'");$numReg = mysql_num_rows($buscarusuarios);if( $numReg != 0):   echo "Nenhum usuário cadastrado no sistema!"; exit();endif;while($linha=mysql_fetch_object($buscarusuarios)):  echo "<div class='lista'>            <p>Nome</p>            <input type='checkbox' name='email[]' value='$linha->email'/> $linha->nome <br/>        </div>";endwhile;   

Na linha 11, no atributo name.. deve ser do tipo array e o value inserir o e-mail da pessoa.

 

Depois para receber os dados dos checkbox's marcados... você deve percorrer com foreach 

 

Por exemplo:

$emails = $_POST[email];foreach($emails as $mail => $value):    echo "Emails marcados: $value <br/>";endforeach;

A variável email que recebe um array de e-mails,  é percorrido com o foreach . 

 

ps: é só um mero exemplo, para você visualizar o retorno.. você precisa implementar para seu propósito.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Desta quando coloco o mouse em cima do checkbox com o sistema rolando, parece la em baixo no canto inferior esquerdo o link que ele esta direcionado que no caso é mailto: e o email da respectiva pessoa, mais quando clico em enviar, ele entra automaticamente no outlook, mais fica em branco, sem o endereço que eu selecionei.

isso acontece com esse código
                  |

                  |
 

<form name="myWebForm" action="mailto:<?php echo $linha["email"];?>" method="get">            <table width="20%" border="0">                <tr>    <td colspan="2" align="center" bgcolor="#CCCCCC">Nome</td>      </tr>  <tr>  <?php				$buscarusuarios=mysql_query("SELECT * FROM usuarios WHERE nivel<='1'");				if(mysql_num_rows($buscarusuarios) == 0){				echo"Nenhum usuário cadastrado no sistema!";				}else{					while($linha=mysql_fetch_array($buscarusuarios)){										?>    <td width="20"> <a href="mailcc:<?php echo $linha["email"];?>"><input name="myWebForm" type="checkbox" value=""></a></td>    <td width="50%"><?php echo $linha["nome"];?></td>  </tr>  <?php } }?>  <tr>    <td colspan="3" align="center"><p>       </p>      <p><br />        <input class="txt bradius" name="enviar" type="submit" />      </p></td>  </tr></table></form>

Compartilhar este post


Link para o post
Compartilhar em outros sites

Isso acontece porque você está colocando mailto no action.  

 

Obrigatoriamente você precisa enviar um array de e-mails para um arquivo php.  e neste, fazer o envio com a classe phpmailer... 

 

Vou mostrar um exemplo com prints e o código para você estudar:

CSS:

<style type="text/css">	.lista{		width: 200px;		border: 1px solid #000;		background: linear-gradient(to right, rgba(28,129,142,0.73) 0%,rgba(125,185,232,0.58) 100%); /* W3C */		box-shadow:         3px 3px 6px 0px rgba(50, 50, 50, 0.43);	}		.lista>div,input[type='submit']{		width: 100%;		height: 20px;		background: #1C818E;		text-align: center;		border: none;			}	</style>

index.php

<div class="lista">	<div>Nome</div>	<form action="recebeDados.php" method="post">		<?php		include 'conn.php';		$buscarusuarios = mysqli_query ( $conn,"SELECT * FROM usuarios");		$numReg = mysqli_num_rows ($buscarusuarios );		if ($numReg == 0) :			echo "Nenhum usuário cadastrado no sistema!";			exit ();				endif;				while ( $linha = mysqli_fetch_object ( $buscarusuarios ) ) :			echo "<input type='checkbox' name='email[]' value='$linha->email'/> $linha->nome <br/>";		endwhile;				?>		<div><input type="submit" value="Enviar"/></div>	</form></div>

recebeDados.php

<?php$emails = $_POST["email"];foreach ($emails as $mail => $value):	echo "$value <br/>";endforeach;

Prints mais abaixo.

 

ps: com base nisso.. pesquise como utilizar a classe phpmailer, e enviar muiltiplos endereços com ele.. 

post-386885-0-02491800-1401941849.png

post-386885-0-32027100-1401941850.png

post-386885-0-79936400-1401941850_thumb.

  • Curtir 1

Compartilhar este post


Link para o post
Compartilhar em outros sites

Crie uma conta ou entre para comentar

Você precisar ser um membro para fazer um comentário

Criar uma conta

Crie uma nova conta em nossa comunidade. É fácil!

Crie uma nova conta

Entrar

Já tem uma conta? Faça o login.

Entrar agora





Sobre o Clube do Hardware

No ar desde 1996, o Clube do Hardware é uma das maiores, mais antigas e mais respeitadas publicações sobre tecnologia do Brasil. Leia mais

Direitos autorais

Não permitimos a cópia ou reprodução do conteúdo do nosso site, fórum, newsletters e redes sociais, mesmo citando-se a fonte. Leia mais

×