Advertisement
Guest User

Untitled

a guest
Jun 4th, 2016
80
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 2.74 KB | None | 0 0
  1. <?php
  2. if($_SERVER['REQUEST_METHOD'] == 'POST'){
  3. require("../model/config.php");
  4. include('phpmailer/class.phpmailer.php');
  5. include('phpmailer/class.smtp.php');
  6. // Campos para envio da mensagem
  7. $de = utf8_decode('quem esta enviando');
  8. $para = utf8_decode('destinatario');
  9. $assunto = utf8_decode('Assunto');
  10. $html = utf8_decode('Conteudo HTML');
  11.  
  12. $tabela = "useremail";
  13.  
  14. // Campos utilizado para consulta
  15. $campos = "email,nome";
  16.  
  17. // Numero Maximo de envio
  18. $quant = 2;
  19.  
  20. // Tempo de um processo de envio para o outro
  21. $seg = 15;
  22.  
  23. // Resgata o valor da global inicio
  24. $inicio = (int)$_POST['inicio'];
  25.  
  26. // Atribui o resultado da soma entre inicio e quantidade
  27. $fim = (int)$_POST['fim'];
  28.  
  29. // Assunto do newsletter
  30. $assunto = $_POST['assunto'];
  31.  
  32. // Mensagem do newsletter
  33. $conteudo = $_POST['conteudo'];
  34.  
  35. // Executa a consulta ou informa um erro caso ocorra
  36. $sql = $pdo->prepare("SELECT ".$campos." FROM ".$tabela." LIMIT ".$inicio.",".$quant."");
  37. $sql->execute();
  38.  
  39. // Conta os Registros no banco
  40. $total = $sql->rowCount();
  41.  
  42.  
  43. if($inicio >= $total){ //se ja enviou todos para o loop
  44. die(json_encode([
  45. 'concluido' => 'sim'
  46. ]));
  47. }
  48.  
  49. $mail = new PHPMailer();
  50. // Envia o email para todos
  51. while($r = $sql->fetchObject()){
  52.  
  53. // Adiciona os padões de destinatario
  54. $para = $r->email;
  55.  
  56. // Cliando a classe PHPMAILER para o envio do newsletter
  57.  
  58. $mail->IsSMTP();
  59. $mail->Host = "mail.iorder.com";
  60. $mail->SMTPAuth = true;
  61. $mail->Username = 'system@iorder.com';
  62. $mail->Password = '@@iorder';
  63.  
  64. $mail->From = 'system@iorder.com';
  65. $mail->FromName = 'Contato iOrder';
  66.  
  67. $mail->AddAddress($para,$r->nome);
  68. $mail->IsHTML(true);
  69.  
  70. $mail->Subject = $assunto;
  71. $texto = 'Texto Alternativo';
  72.  
  73. $mail->Body = $conteudo;
  74. $mail->AltBody = $texto;
  75.  
  76. if($mail->Send()){
  77. echo 'Mensagem enviado com sucesso para: '.$para.'<br>';
  78. }else{
  79. echo 'Mensagem não enviada para: '.$para.'<br>';
  80.  
  81. }
  82. }
  83.  
  84. //proxima quantidade
  85. $inicio = $inicio+$fim;
  86.  
  87. //caso não tenha acabado, retorna os novos parametros
  88. die(json_encode([
  89. 'concluido' => 'nao',
  90. 'inicio' => $inicio,
  91. 'fim' => $fim,
  92. 'conteudo' => $conteudo,
  93. 'total' => $total
  94. ]));
  95.  
  96. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement