\n"; // $headers .= "X-Priority: 3\n"; $headers .= "MIME-Version: 1.0\n"; $headers .= "Content-type: text/html; charset=iso-8859-1\n"; $headers .= "From: Boletim Info Semanal \n"; mail($toaddress, $subject, $body, $headers); return true; } // Variáveis apenar para preparar o link de retorno $num_bol_=trim($_POST["num_bol"]); $titulo_=trim($_POST["titulo"]); $opcao_=trim($_POST["opcao"]); echo "Voltar para Boletim"; // Controle: // Se ctrl = 1 => esperamos 10'; ctrl<=0; chamamos a próxima pg if ($_POST[ctrl]==1){ $now=strtotime("now"); // ******* Relatório do controle (parte inicial) $relatorio.="Controle Delay. -- \$_POST[p]:".$_POST[p]." - \$_POST[ctrl]:".$_POST[ctrl]."\n"; $relatorio.="Início:".date("d/m/Y H:i:s")."\n"; $diff=0; while( $diff < 10 ) { // espera 10 segundos $diff = abs( $now - strtotime("now") ); } $ctrl=0; $p=$_POST[p]; $p++; // ******* Relatório do controle (parte final) $relatorio.="Fim:".date("d/m/Y H:i:s")."\n\n\n"; $relatorio.=$_SESSION[relatorio_ses]; // Inclui relatórios anteriores no fim do atual. $relatorio= "
".$relatorio."
"; $_SESSION[relatorio_ses]=$relatorio; // Relatórios anteriores passa a incluir atual completo. echo $relatorio; ?>
"; } else if ($_POST[ctrl]==0){ // Se é a seção inicial if($_POST[p]==-1) { // Atribuimos o valor 0 ao número da página $p=0; // Zeramos a variável $relatorio e $_SESSION[relatorio_ses] $relatorio=""; $_SESSION[relatorio_ses]=""; $err=""; // Atribuimos um valor para a variável hora_inicio_interna (apenas para o relatório inicial) $hora_inicio_interna= date("d/m/Y H:i:s"); // Colocamos novamente aqui a função de seleção de status, (apenas para o relatório inicial) $link = mysql_connect("187.45.196.204", "casadacultura", $_SESSION['banco']) or die("Não pude conectar: " . mysql_error()); mysql_select_db('casadacultura', $link) or die ('Não foi possível usar db: ' . mysql_error()); if ($_POST["opcao"]=="1"){ $str="'01', '03', '04'"; }else if ($_POST["opcao"]=="2"){ $str="'05', '99'"; }else if ($_POST["opcao"]=="3"){ $str="'04'"; }else{ $relatorio= "Erro. Boletim não enviado. Opção Inválida
Esta página não pode ser acessada diretamente!
\n\n"; $err.=$relatorio; echo $relatorio; exit(); } // *************************** // // *** Relatorio Inicial *** // // Primeiro criamos as variáveis // Total de Registros de toda a Base (qualquer status) já enviados $nte $te=@mysql_query("select * from assinantes where enviado=1"); $nte=@mysql_num_rows($te); // Total Registros Envolvidos na atual operação (Status Selecionados) $ntre $tre=@mysql_query("select * from assinantes where status in (".$str.")"); $ntre=@mysql_num_rows($tre); // Total de Registros já enviados da atual operação (Status Selecionados) $ntesele $te__sele=@mysql_query("select * from assinantes where (enviado=1 and status in (".$str."))"); $ntesele=@mysql_num_rows($te__sele); // total a enviar $ntae $tae=@mysql_query("select * from assinantes where (enviado=0 and status in (".$str."))"); $ntae=@mysql_num_rows($tae); // ****** Agora geramos o relatório ************ // $relatorio.="RELATÓRIO INICIAL DO BOLETIM ".$_POST[num_bol]."\n"; $relatorio.="Hora de Início dessa página: ".$hora_inicio_interna."\n"; $relatorio.="Hora do presente relatório: ".date("d/m/Y H:i:s")."\n"; $relatorio.="Registros de toda a Base (quaisquer status) já enviados:\t".$nte."\n"; $relatorio.="Registros Envolvidos na atual operação (status selecionados):\t".$ntre."\n"; $relatorio.="Registros Envolvidos na atual operação (status Selecionados) JÁ ENVIADOS: ".$ntesele."\n"; $relatorio.="Registros Envolvidos na atual operação (status Selecionados) A ENVIAR:\t".$ntae."\n\n\n"; $relatorio= "
".$relatorio."
"; $_SESSION[relatorio_ses]=$relatorio; // "Relatórios anteriores" passa a incluir O RELATÓRIO INCIAL. echo $relatorio; mailfrom("controle@casadacultura.org","RELATÓRIO INICIAL do Bol ".$_POST["num_bol"].". Enviado $n boletins.","$relatorio"); // Zeramos novamente a variável $relatorio e para que não apareça duas vezes: $relatorio=""; } // End if - Seção Incial $_SESSION["date1"] = strtotime( "now" ); $now=strtotime("now"); $hora_inicio_interna= date("d/m/Y H:i:s"); // $_SESSION["date1_control"] = date("d/m/Y H:i:s"); $filename = "bolet_p_envio/".$_POST["nome_arquivo"]; $handle = fopen($filename, "r"); $boletim = fread($handle, filesize($filename)); fclose($handle); session_start(); $link = mysql_connect("187.45.196.204", "casadacultura", $_SESSION['banco']) or die("Não pude conectar: " . mysql_error()); mysql_select_db('casadacultura', $link) or die ('Não foi possível usar db: ' . mysql_error()); if ($_POST["opcao"]=="1"){ $str="'01', '03', '04'"; }else if ($_POST["opcao"]=="2"){ $str="'05', '99'"; }else if ($_POST["opcao"]=="3"){ $str="'04'"; }else{ $relatorio= "Erro. Boletim não enviado. Opção Inválida
Esta página não pode ser acessada diretamente!
\n\n"; $err.=$relatorio; echo $relatorio; exit(); } $data1 = strtotime( date("Y/m/d H:i:s") ); $r=@mysql_query( "select * from assinantes where (enviado=0 and status in (".$str.")) limit 0, 10 " ); $sub=$_POST[sub]; if($n=@mysql_num_rows($r)) { for($i=1;$i<=$n;$i++){ $d=@mysql_fetch_array($r); if(substr($d["status"], 0, 1)!="5"){ $titulo_individual=$_POST[titulo]." | Assinante: ".$d[email]; // ROTINA DE ENVIO // INCLUÍ O ENDEREÇO DE ASSINANTE NO TÍTULO if(@mailfrom($d["email"],$titulo_individual,"$boletim")) { @mysql_query("update assinantes set enviado=1 where email='".$d["email"]."'"); }else{ $err.="Erro grave. Tentativa de envio de assinante não concluída. Erro no mailfrom()\n"; $err.="Email".$d["email"]."\tNome:".$d["nome"]."\tStatus:".$d["status"]; } }else{ $err.="Erro grave. Tentativa de envio de assinante excluido.\n"; $err.="Email".$d["email"]."\tNome:".$d["nome"]."\tStatus:".$d["status"]; } // echo "entrei no for $i linha 51\n
"; // exit(); } // *************************** // // *** Relatorio Parcial *** // // Primeiro criamos as variáveis // Total de Registros de toda a Base (qualquer status) já enviados $nte $te=@mysql_query("select * from assinantes where enviado=1"); $nte=@mysql_num_rows($te); // Total Registros Envolvidos na atual operação (Status Selecionados) $ntre $tre=@mysql_query("select * from assinantes where status in (".$str.")"); $ntre=@mysql_num_rows($tre); // Total de Registros já enviados da atual operação (Status Selecionados) $ntesele $te__sele=@mysql_query("select * from assinantes where (enviado=1 and status in (".$str."))"); $ntesele=@mysql_num_rows($te__sele); // total a enviar $ntae $tae=@mysql_query("select * from assinantes where (enviado=0 and status in (".$str."))"); $ntae=@mysql_num_rows($tae); // ****** Agora geramos o relatório ************ // $relatorio.="RELATÓRIO PARCIAL do Boletim ".$_POST[num_bol]."\n"; $relatorio.="Página número:".$p."\n"; // Acrecentado por mim $relatorio.="Hora de Início dessa página: ".$hora_inicio_interna."\n"; $relatorio.="Registros de toda a Base (quaisquer status) já enviados:\t".$nte."\n"; $relatorio.="Registros Envolvidos na atual operação (status selecionados):\t".$ntre."\n"; $relatorio.="Registros Envolvidos na atual operação (status Selecionados) JÁ ENVIADOS: ".$ntesele."\n"; $relatorio.="Boletins enviados na presente etapa desta operação:(controle operacional): ".$n."\n"; $relatorio.="Registros Envolvidos na atual operação (status Selecionados) A ENVIAR:\t".$ntae."\n"; $relatorio.="Erros:\t".$err."\n\n\n"; $relatorio.=$_SESSION[relatorio_ses]; // Inclui relatórios anteriores no fim do atual. $relatorio= "
".$relatorio."
"; $_SESSION[relatorio_ses]=$relatorio; // Relatórios anteriores passa a incluir atual completo. echo $relatorio; mailfrom("controle@casadacultura.org","Relatório Parcial n.".$p." Bol ".$_POST["num_bol"].". Enviado $n boletins.","$relatorio"); $ctrl=1; // Tendo concluído o procedimento parcial, sai da rotina através de um form. ?>
".$relatorio.""; $relatorio.=$_SESSION[relatorio_ses]; // Inclui relatórios anteriores no fim do atual. $_SESSION[relatorio_ses]=""; // Zera Relatórios Anteriores. echo $relatorio; echo "
voltar"; mailfrom("controle@casadacultura.org","Relatório Final do Boletim n. ".$_POST["num_bol"].". Enviado $n boletins.","$relatorio"); $relatorio=""; // Zera Relatório Local (Para evitar problemas } } ?>