Relatório de uso de caixa postal
Publicado por Anderson Irias Hermogenes (última atualização em 22/12/2016)
[ Hits: 3.225 ]
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); } } ?>
Script para enviar e-mails em grande quantidade
Enviando um e-mail com um arquivo em anexo
Nenhum comentário foi encontrado.
Enviar mensagem ao usuário trabalhando com as opções do php.ini
Meu Fork do Plugin de Integração do CVS para o KDevelop
Compartilhando a tela do Computador no Celular via Deskreen
Como Configurar um Túnel SSH Reverso para Acessar Sua Máquina Local a Partir de uma Máquina Remota
Configuração para desligamento automatizado de Computadores em um Ambiente Comercial
Compartilhamento de Rede com samba em modo Público/Anônimo de forma simples, rápido e fácil
Cups: Mapear/listar todas as impressoras de outro Servidor CUPS de forma rápida e fácil
Criando uma VPC na AWS via CLI
Tem como instalar o gerenciador AMD Adrenalin no Ubuntu 24.04? (16)
Arch Linux - Guia para Iniciantes (2)
Problemas ao instalar o PHP (11)
Tenho dois Link's ( IP VÁLIDOS ), estou tentando fazer o failover... (0)