Relatório de uso de caixa postal
Publicado por Anderson Irias Hermogenes (última atualização em 22/12/2016)
[ Hits: 3.307 ]
Homepage: https://irias.com.br
Script gera um relatório sobre o uso de caixa de correio, informando o tamanho total da caixa postal e quantidade de quota utilizada. Realiza também a listagem de todas as pastas e subpastas da caixa postal, informando o total de mensagens da pasta, quantidade de mensagens não lidas, e o tamanho total de utilização de quota da pasta. Para isto o script se conecta ao e-mail utilizando o protocolo IMAP na porta 143.
<!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <title>Relatório de uso do Email</title> </head> <body> <h4>Dados da conta que será analisada.</h4> <form method="POST" action="relatorioemail.php"> <input type="text" name="host" placeholder="Host"> </br></br> <input type="email" name="email" placeholder="E-mail"> </br></br> <input type="password" name="senha" placeholder="Senha"> </br></br> <input type="submit" value="Enviar"> </form> </body> </html> <?php if($_POST){ $host = $_POST['host']; $usuario = $_POST['email']; $senha = $_POST['senha']; $emailRaiz = imap_open("{".$host.":143/novalidate-cert}INBOX", $usuario, $senha); if(!$emailRaiz){ echo imap_errors(); }else{ $dadosQuota = imap_get_quotaroot($emailRaiz, "INBOX"); if (is_array($dadosQuota)) { $quota = $dadosQuota['STORAGE']; echo "</br></br>Tamanho total da conta em KB: ".$quota['limit']; echo "</br>Quantidade utilizada em KB: ".$quota['usage']; }else{ echo "</br></br>Falha ao obter tamanho total da conta e a quantidade já utilizada"; } $listaPastas = imap_getmailboxes($emailRaiz, "{".$host."}", "*"); if(is_array($listaPastas)){ echo ("</br><h4>Lista de pastas da conta de e-mail</h4></br>"); foreach ($listaPastas as $pasta => $valorPastas){ echo str_replace("{".$host."}", "", $valorPastas->name)."</br>"; $pastaEspecifica = str_replace("}", ":143/novalidate-cert}", $valorPastas->name); $emailPasta = imap_open($pastaEspecifica, $usuario, $senha); if(!$emailPasta){ echo "Erro ao tentar listar a pasta ".$valorPastas->name; print_r(imap_errors()); }else{ $info = imap_mailboxmsginfo($emailPasta); if($info){ echo "Total de mensagens: ".$info->Nmsgs."</br>"; echo "Mensagens não lidas:".$info->Unread."</br>"; echo "Tamanho total: ".$info->Size." Bytes</br>"; echo "</br>"; }else{ echo "Erro ao obter os detalhes das pastas:".imap_last_error(); } $emailPasta = imap_close($emailPasta); } } }else{ echo "Nao consegui obter a lista de pastas:".imap_last_error(); } $emailRaiz = imap_close($emailRaiz); } } ?>
Classe utilitária para enviar emails com PHP através da função mail
Correio eletronico no seu site
Sistema de indicação para múltiplos emails
Nenhum comentário foi encontrado.
Como compartilhar a tela do Ubuntu com uma Smart TV (LG, Samsung, etc.)
Descritores de Arquivos e Swappiness
tux-gpt - Assistente de IA para o Terminal
Instalação e configuração do Chrony
Programa IRPF - Guia de Instalação e Resolução de alguns Problemas
Como instalar no Linux Jogos da Steam só para Windows
Instalando o Team Viewer no Debian Trixie - problema no Policykit
O Que Fazer Após Instalar Ubuntu 25.04
Erro ao atualizar o archlinux [RESOLVIDO] (2)
Erro ao executar o comando para dar um get email (0)